Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。" I+ V( g) O# M; t0 T9 q8 W
( P! N$ M: e7 f* k+ P: T9 P* X- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则) F4 V+ L! l% ]2 J( q% g. x# s
- client_body_buffer_size 512k;
9 d; B, H8 l6 y4 Q3 `* d - proxy_connect_timeout 5;1 n8 f# J$ S# u4 }7 ?, w
- proxy_read_timeout 60;4 I3 y& L* X! j) F
- proxy_send_timeout 5;- D s$ L3 {9 `, g+ @
- proxy_buffer_size 16k;
! P( V' K4 d5 R# m1 q - proxy_buffers 4 64k;
* ?$ x, C# e& ~/ ^3 a: E - proxy_busy_buffers_size 128k;
+ t! n" ^% l+ v0 K: ]; P - proxy_temp_file_write_size 128k;# O. ?( R7 ^7 |" P
- proxy_temp_path /home/cache/temp;* T# `& V! D) H- ]+ k: A
- # 配置临时目录
v% o, S9 }1 C - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
2 y1 p% l5 I3 V: @! e - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
. K+ b$ i0 T( }! z" N8 i7 n) }$ O* A# W E: X. h8 p
- mkdir /home/cache/path -p
5 p6 ^. [! h, F k! @, h8 V - mkdir /home/cache/temp
* A2 J6 D) X( f# u5 l - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
8 [- ]7 o9 p( g) i9 N
: P9 r: d% J# E$ J* k7 e8 i# O. ?4 m5 T4 b/ q# M
先创建一个“www.wdidc.net”虚拟主机
2 a* U) F$ ?% ]9 j, s; { c2 F- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
) I- s( [. x8 ^3 o) l
) n5 g2 X7 u C: N$ z删除之前系统生成的代码,填入以下代码,注意修改网址。5 F( r+ d. l( Y; C
- server
# @9 x* ?' r7 j8 h) n% K/ _& X - {# J% t, @# I8 W1 J( ^
- listen 80;
+ {3 A) m) Y4 u- H7 ^$ u - server_name www.wdidc.net;% o$ b$ z- B$ U4 R
% b0 z# C" o' B' W, V" X- location / {7 w8 L, t* ]. n0 p% r
- proxy_cache cache;$ h& K. L) i/ c
- proxy_cache_valid 200 304 7d;8 f( H/ Y5 [( N7 |
- #200 304状态缓存7天,按实际情况修改
% O' o5 `' }& z2 o3 a# f - #其他状态缓存(如502 404)10秒; ?. V7 f9 X- _: b E w
- proxy_cache_valid any 10s;
- c! ^% h5 }4 k - proxy_cache_key "$scheme$host$request_uri";
( }7 K6 G3 s. l' d3 N/ n( ` - #缓存key规则,用于自动清除缓存。4 m* a e9 z& p8 } e& O
- proxy_pass https://bbs.wdidc.net/;6 W1 Y5 D: }! c" w+ E/ I3 j
- proxy_redirect off;
! g5 t. T/ m5 o7 R, x - proxy_set_header X-Real-IP $remote_addr;! }- }3 ?2 a0 g
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
m) c- U* [: L1 Q9 K* u - #向后端传递访客ip; Q* p- ~- x" ]$ ^
- #limit_conn one 20;
2 r% p2 ~- a% ^0 U& \" B - #limit_rate 200k;
$ Z: f9 B4 @' f3 \3 }+ M - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
$ o) d4 j$ e" @. J$ Q- _9 ^4 [* U8 R - }) h. }7 r/ d% P# r$ Q- P& y, L8 w
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。* H+ I z \3 ^: s- v
9 A) w" j/ }" W- k
- /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”表示正常,若有错误请根据错误提示排除问题。
7 |' ?6 ]" e( v, c# h3 K5 N" u# f4 q7 p
重启nginx
# L) w, }6 B/ i/ E. B$ R Z$ e) [
8 h" ?* e5 S( ^# l- g. U6 X
7 I4 I: M R4 @3 D
2 X% t/ [% W7 _' B6 T3 d! \7 [ |