Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。. m5 [ z* D) Y0 \$ Z$ i
3 ?) d$ N2 l; |0 o- w- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则! [* I1 w! I% u# G' O+ u
- client_body_buffer_size 512k;
/ ]5 t {3 J& q# q5 A+ o - proxy_connect_timeout 5;
1 R& @5 l4 i& }' h: D3 n' C - proxy_read_timeout 60;0 d" e& s" M5 i a4 C* z
- proxy_send_timeout 5;
) B- S& y. p" V. x - proxy_buffer_size 16k;: a9 A J+ p4 K5 K6 o# F2 O
- proxy_buffers 4 64k;
8 i1 k' s4 j0 b5 \) W+ W4 x4 u - proxy_busy_buffers_size 128k;
- m* a4 |% C; s - proxy_temp_file_write_size 128k;
& Y6 w( D3 Q3 G3 c6 u/ t+ M - proxy_temp_path /home/cache/temp;
* i& h0 q( `2 W0 U9 o8 y, `+ R - # 配置临时目录/ I* ^8 s" z, ?7 h3 s7 H
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;) L& a! r3 P* s& q! |, t1 k X
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:8 g9 Y8 m- `2 W; M6 s& M" U
( J0 P* T0 t$ s2 O9 l- mkdir /home/cache/path -p
0 S& E3 ?5 U0 W/ x% X - mkdir /home/cache/temp
" {+ f- u; ]4 P - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限( F- }, _( [% ~+ a
9 ]" n: ^$ E) x. o% |8 I
' x& B }, l8 l+ f先创建一个“www.wdidc.net”虚拟主机
5 Y) o( u) d" v- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。- I- f: z; [) Y! y! [' [! E
" n; K% X- S& ^" ]* ^
删除之前系统生成的代码,填入以下代码,注意修改网址。
8 u7 w2 Z3 ?& }4 x! U- server
& ?# Y2 ~5 f$ g: t; y - {
6 B, i1 Z, \1 l7 b' Z: f$ R4 u - listen 80;
/ X& B+ \; O; J- q# h - server_name www.wdidc.net;9 X: ~' ~; g+ z: D
$ b' N9 u- W7 X' n; D& P$ G2 G- location / {
" C5 g1 I V5 J0 a, r4 D - proxy_cache cache;
% S. M+ b: Y o- d- z - proxy_cache_valid 200 304 7d;8 E- |2 D# K# R
- #200 304状态缓存7天,按实际情况修改! B6 g! e' W) ?- T- w" v
- #其他状态缓存(如502 404)10秒: S" Y2 q i I- k9 S$ H% ?9 ~& Y
- proxy_cache_valid any 10s;/ M* M T6 D% y
- proxy_cache_key "$scheme$host$request_uri";! E( g6 {: A9 t8 ]* @
- #缓存key规则,用于自动清除缓存。( C) j. U5 n9 Y+ `- w/ F
- proxy_pass https://bbs.wdidc.net/;
( v8 u! V, }" m3 F( b - proxy_redirect off;
2 i3 W, ` H0 I - proxy_set_header X-Real-IP $remote_addr;
4 l6 k2 \0 h9 I* }! ?! @/ h8 Z; c! V - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
. ^( t/ l1 N* O, c4 | - #向后端传递访客ip
9 C% t+ ]6 F- G. s! O - #limit_conn one 20;
/ h% h, B: @5 b5 {% m6 R o - #limit_rate 200k;
0 s$ m1 V# E1 {9 t' b - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
) b4 y" Q* u1 r- R9 g0 V1 v, j+ P - }( e2 F5 n# K. g( }, _/ w& [# J
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
( Y; K4 q& h4 i& G H4 Z5 [( u" k7 f2 O* |& o6 J
- /usr/local/nginx/sbin/nginx -t
复制代码 测试:若提示:“the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok configuration file /usr/local/nginx/conf/nginx.conf test is successful”表示正常,若有错误请根据错误提示排除问题。
. u$ s% ^* u0 Y7 J3 V; X' z, F W9 p+ X
重启nginx
. b* [' R2 w" |* S i6 U8 N, c, l. u
) V1 G+ r- j9 s4 J6 H* P9 w' p; [
6 L* Z$ }# Y$ x) } K9 E( {# m$ n: {
|