Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。 u) ~7 [) W8 ] X' _
0 S% X: f/ H% A5 x* m/ t- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则6 O! \1 y4 U( r
- client_body_buffer_size 512k;
7 `; D3 V4 ^- Y, U - proxy_connect_timeout 5;
" |: z' x. V1 ^) P n - proxy_read_timeout 60;
. |6 f( x& H; @# y8 I4 ^! H - proxy_send_timeout 5;2 \# \, m0 g2 k+ d9 q
- proxy_buffer_size 16k;* r7 [4 Z8 |, X! C
- proxy_buffers 4 64k; C/ ?, v2 ]/ f/ r/ b( l
- proxy_busy_buffers_size 128k;3 U& B8 D K7 g
- proxy_temp_file_write_size 128k;/ F. @4 \6 n1 E& k* y a, f$ T
- proxy_temp_path /home/cache/temp;/ s. H, c! M- u" z) ?1 l
- # 配置临时目录
" s1 g0 o9 s$ x) `& b* ?7 S4 x - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
\, X: a! I9 g5 F - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:5 k% n+ @9 y+ f3 a/ N, l
" z# b* J3 p* ^' n6 K+ x: X+ Y) k0 f
- mkdir /home/cache/path -p
/ d4 S) v9 u) Z8 H/ F2 G+ | - mkdir /home/cache/temp! u& k6 B# f/ m* D
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限7 d& Y& W' G; ` |: q" g
3 z+ I7 d% J X. z
[ y, [6 D& N3 n6 F. E先创建一个“www.wdidc.net”虚拟主机+ C3 U, @7 _" p/ x& b1 g. I
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
' h- J. k' {, o& `6 h7 P5 c' l! D
5 H- X7 g8 s5 J, @删除之前系统生成的代码,填入以下代码,注意修改网址。
) Z+ |* N" G2 H$ |- server
% U4 W/ d8 q! Z0 O - {
) b5 `6 |9 k! @9 D; B" S. S - listen 80;
* t d2 Q3 Q4 M1 m; X( t$ {+ h( j2 R - server_name www.wdidc.net;
: d1 a, ~5 x, m) r - 7 }: x! z/ v6 S' V( N9 `
- location / {
/ r. B5 H+ s. K" o - proxy_cache cache;
) P3 {% I7 D/ W+ w) L& M$ ~ - proxy_cache_valid 200 304 7d;" T" I, M, `5 j3 O
- #200 304状态缓存7天,按实际情况修改" V5 |1 f6 Q; I! Y& `4 B' i) v( {
- #其他状态缓存(如502 404)10秒' A+ y1 T& B7 ~2 \4 H' q
- proxy_cache_valid any 10s;
. Q D- l: S8 U5 j) k% k8 c% d - proxy_cache_key "$scheme$host$request_uri";9 G& L$ Y/ ^# I/ ]' @2 X# G
- #缓存key规则,用于自动清除缓存。
0 e. Q2 O6 i( h" B - proxy_pass https://bbs.wdidc.net/;) N7 p9 Z r3 L: f
- proxy_redirect off;
' R- [9 N+ y1 v- O6 | - proxy_set_header X-Real-IP $remote_addr;
0 e- Q$ [$ G$ P- X5 u* [ - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;. \0 }. m' P0 k _
- #向后端传递访客ip5 U. Q7 L5 f# s% D
- #limit_conn one 20;* I" I/ U0 ?. |" X
- #limit_rate 200k;
% H* ]& o; D3 E - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#8 r% h* V9 @; @! H; Z# F7 y
- }% M7 U3 w Q+ }" O: c. G$ L
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
! z6 M, Y& L: Y' h1 T, f
. [1 L' @# B4 d7 ]9 g8 o- /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”表示正常,若有错误请根据错误提示排除问题。
& {; q4 ]! F( ~/ e$ ^
$ l, S8 I @; K, V2 o5 J* P: Q8 [重启nginx
& ^$ X+ h' T, v: Z9 p% w2 p* L# |; k0 Z. R+ d
( \& o5 B g9 }* G/ @( \
, N# E5 i4 z7 U$ [9 }! @+ N* @
0 A: s& {& O! M6 U |