Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。* I9 B z, v5 D) M2 d7 _
6 e& x$ A% ~2 N
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
^7 L' d7 P9 I' G0 V- client_body_buffer_size 512k;3 D0 m( v. ^) h9 e7 f7 n
- proxy_connect_timeout 5;$ h1 ?0 x9 [! t+ ]
- proxy_read_timeout 60;9 Y4 Z! M% `, n$ }0 R
- proxy_send_timeout 5;3 y, K" b, Q% @, C. E' ^7 c
- proxy_buffer_size 16k;% O- n2 |7 B* k4 O4 z1 Q3 x
- proxy_buffers 4 64k;/ {# g, n) [1 ^% i2 g6 n$ e+ {
- proxy_busy_buffers_size 128k;
6 p! y" k' m0 G/ ] - proxy_temp_file_write_size 128k;( h# e9 l ~$ a0 |
- proxy_temp_path /home/cache/temp;
! t. ]# x9 k6 g8 S4 ? - # 配置临时目录
+ c: w ?* \/ n' g - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;) @4 z3 m6 N1 j& t% u3 i$ e3 I' P
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
0 K5 ]+ r2 o9 k8 G! _. a: V8 p% f5 _
( G9 a+ U& @: g1 r9 Q7 w- mkdir /home/cache/path -p( Q! ]5 S" G R& S/ A& w8 K# |
- mkdir /home/cache/temp
% k% f* w; G) `! ~' ] - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
1 h6 v8 k9 Z8 D) Q) P/ ]3 `0 M; Q8 M5 ?3 |7 G
) p+ U2 {6 P: `# ~" S* x, S
先创建一个“www.wdidc.net”虚拟主机+ H. R* L$ p' c6 a8 s$ F6 b
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
& r2 t! o1 `3 a$ F6 S; @+ K+ S' T# m% f6 y B1 p* }$ a
删除之前系统生成的代码,填入以下代码,注意修改网址。/ b6 P1 u( H! Z' e5 }
- server Y+ O/ [5 l: Z5 J, Q F% ?+ p E
- {
( m, ?% g- D8 z6 I# l4 B - listen 80;& H2 @% a( _% t
- server_name www.wdidc.net;
# u# a0 \# X+ z6 p8 t, s - $ S% c6 n2 S1 W9 |% N
- location / {; \2 Q6 _: Z1 M% [( ^' i! {
- proxy_cache cache;! R% }, d+ h+ G: e
- proxy_cache_valid 200 304 7d;
# u; p& M$ K# {) I/ Z - #200 304状态缓存7天,按实际情况修改
& H) {% u: Q& y, \' e! y( n4 P - #其他状态缓存(如502 404)10秒' R5 y3 ~& s# \+ V4 w
- proxy_cache_valid any 10s;5 ?( [+ s5 S; ]
- proxy_cache_key "$scheme$host$request_uri";
~/ [: W$ R9 |; s/ q - #缓存key规则,用于自动清除缓存。
" n9 C% ^! s8 d( p/ N( A1 J. }+ z - proxy_pass https://bbs.wdidc.net/;0 k2 ]9 u$ x% ~* I6 n
- proxy_redirect off;% Q) Y+ Z) ?# x( r' E/ z5 d# k# f
- proxy_set_header X-Real-IP $remote_addr;
+ s" s( K# _5 f - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
0 B( p: [ Z+ m9 L( c - #向后端传递访客ip. s, ~# d" ~) E3 l- n
- #limit_conn one 20;2 c6 y8 K& k5 |# |
- #limit_rate 200k;
4 k- X; C" @: y3 \1 l - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#3 _/ t# L# N7 {
- }
, Y# g {, X) C& { - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
8 }: J) f. n( t& y9 s7 H; J, Z+ t5 k8 o* E9 {! z
- /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”表示正常,若有错误请根据错误提示排除问题。
& l6 a5 \9 r8 d3 _/ }& l
5 A+ ?1 R, ^" O ]重启nginx& a ~9 \8 @7 R# ^1 E5 N
& \8 U" u% b6 v! d2 V8 p
2 w2 G! v; j' B1 T, U3 \" Y, |0 i' W$ r7 o3 z
- \; r6 w; {& s2 {
|