Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。5 X& ^! i3 R6 ]. |
) \, p9 o& M# D( V M0 [& u% z
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则$ C6 Q4 h9 j2 B1 @- Q+ V/ [
- client_body_buffer_size 512k;
; |4 c6 P5 _6 J5 z: p6 H" ^- D( v - proxy_connect_timeout 5;
1 M/ _1 G h" ]& z0 b7 g4 s3 G - proxy_read_timeout 60;6 R4 W2 U+ J- \3 f
- proxy_send_timeout 5;/ c" ]$ k4 |8 k& ^: f* w% n. }4 g( u% Z
- proxy_buffer_size 16k; n- E$ ~ q3 v1 Z9 F/ [
- proxy_buffers 4 64k;
+ \. U- u7 F7 B$ _- j3 ^ - proxy_busy_buffers_size 128k;
5 p, u# F8 f K f - proxy_temp_file_write_size 128k;: Y9 y, d$ Q* F# i: V* V1 b' l8 v! f
- proxy_temp_path /home/cache/temp;$ Q0 M7 v c( r0 D) ^
- # 配置临时目录
( y3 d1 Y. {3 x% I! B* u - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
: a1 J) u7 |8 T: a" ?8 H - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
0 o5 w3 g5 J, X6 I& H# l
9 g w. `4 H6 P- mkdir /home/cache/path -p
' C5 U3 M) p, P; `1 w - mkdir /home/cache/temp
! Q0 f$ w; U8 p6 y$ t - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限* d0 |; y+ |2 r) Q
0 P" X3 V7 ?5 o! \
6 L7 o0 v; q- b' g先创建一个“www.wdidc.net”虚拟主机
" ^' J- [3 L: j. V- V- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。7 V# ^* U5 `( }# g9 C- ^
* W; Z) K( j4 A8 [; |3 Q/ T删除之前系统生成的代码,填入以下代码,注意修改网址。
3 e7 L1 t8 r% s- server
. L4 s3 G0 g- Y# y; G% a - {
1 ]; u. H- a7 B) ~8 F% P - listen 80; A3 u ?0 Q) x9 z- M! a
- server_name www.wdidc.net;: I% [$ M: @; ^% Y3 u7 y8 U' L
( u' J0 @, }1 `/ ]! U5 U2 k; _- location / {/ S4 r8 c! X) X
- proxy_cache cache;' ?& `% f0 v9 ?) q+ Q
- proxy_cache_valid 200 304 7d;
; v0 {% V' e1 k) y9 e) g0 b) o p: a - #200 304状态缓存7天,按实际情况修改/ [+ }# ` j, f- Q
- #其他状态缓存(如502 404)10秒' @. _; a/ a* w% u* D
- proxy_cache_valid any 10s;
* M4 Q! t% G4 Q, A! n: P - proxy_cache_key "$scheme$host$request_uri";2 S/ g; I4 c6 x9 e) s+ Q. e$ y
- #缓存key规则,用于自动清除缓存。" }# e/ s7 L! G9 E. z, |
- proxy_pass https://bbs.wdidc.net/;
9 l m. z2 K/ F' W2 ]9 h - proxy_redirect off;
& y, {! L8 ]7 P8 O7 h1 h - proxy_set_header X-Real-IP $remote_addr;9 d; |) y- F- d
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;/ E E6 g. e. l9 A
- #向后端传递访客ip0 a! \5 }! k" }
- #limit_conn one 20;# U* N: I; G: n; M! r" l- p' a
- #limit_rate 200k;
2 V7 r% R; A* s3 c: v - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
8 j* T, N) Y# Y* f- ^7 E8 m - }# |, B/ E1 J/ X) F
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
8 j% D) ~3 ^' m# ` B* g0 `9 q) g% f9 U( m2 [/ Q; w; W
- /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”表示正常,若有错误请根据错误提示排除问题。
k, Q4 I2 B1 b Z" i2 C) I' k! o4 Z; {9 f- ]' }
重启nginx+ q4 D$ v. t: l0 d W u! n% b
6 [& J# w; y$ Q7 y8 P$ R
& ?) m6 e1 e5 [$ ?5 X+ V2 R
5 n' [( O/ ^- ]! U O/ \0 d) T( n' b9 H H, ?: ~2 B# a
|