Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。5 ]. k) y% F0 Q8 m+ y1 z7 X
0 g# H) t* D* {) t7 k3 r
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则& C7 A% \2 ]# T% l1 {8 @
- client_body_buffer_size 512k;& D4 q+ c# U" p/ o5 m. N
- proxy_connect_timeout 5;
8 ^1 U1 |$ c) \5 h3 \: c - proxy_read_timeout 60;. A+ \/ f$ Z' d
- proxy_send_timeout 5;
' v. m2 t0 [ l+ u! e: g - proxy_buffer_size 16k;
8 ?3 J0 B. k! |. k6 k5 [1 g. E - proxy_buffers 4 64k;3 t7 P! y s( c+ e8 K
- proxy_busy_buffers_size 128k;7 ~/ ] o& b$ N' a A' Q8 l
- proxy_temp_file_write_size 128k;9 S1 z) f0 y8 }- Z- X1 p
- proxy_temp_path /home/cache/temp;
/ M0 l6 T c z. _ p - # 配置临时目录# \3 |! H+ m% s/ } K
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;6 Y7 h- `! O* c7 @0 n7 s) w4 H$ d
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
9 z! s; _0 Y' {! o) [; @! n8 X) Y
, D) Y, u6 B" a; r7 o! e- mkdir /home/cache/path -p# X( @0 P' _1 [
- mkdir /home/cache/temp
3 X: c5 ?. t8 }* g: X - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限; s. ^/ D4 M# U
, ]. i/ z% f( n
\: y4 e; j" {先创建一个“www.wdidc.net”虚拟主机5 X! }2 t" ]3 ^) I, {
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
- Z1 S) B( {2 t) p, e1 j+ S) O. b" N! o w
删除之前系统生成的代码,填入以下代码,注意修改网址。
$ m. N, a3 m9 k6 \' L% @- server
8 m! E, G2 c/ X! L& \8 l* f" C( } - {
) T8 x: A8 `8 m5 W6 S. @, }: I - listen 80;2 {0 n& h4 x& E7 a2 q
- server_name www.wdidc.net;
5 [* \ s* _. f
& |) J2 l3 U" u& t- location / {! o4 R8 K9 \# P& g
- proxy_cache cache;
' r$ E7 C2 V3 S. V - proxy_cache_valid 200 304 7d;
+ d. |5 k7 z& i - #200 304状态缓存7天,按实际情况修改- i1 \) i& b. I& W" |) ]
- #其他状态缓存(如502 404)10秒
3 @: P0 m( S8 _, t* Z# g - proxy_cache_valid any 10s;
4 P3 L6 F5 }2 Z: `: s - proxy_cache_key "$scheme$host$request_uri";' M9 c, p: F- s& e& ]" g
- #缓存key规则,用于自动清除缓存。
1 \: Y' J; Z& G - proxy_pass https://bbs.wdidc.net/;
* W [5 t; y, n" }1 a - proxy_redirect off;
% s2 s3 D6 S# o" b - proxy_set_header X-Real-IP $remote_addr;) u/ a# Q% A0 {, B; U
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;2 K& Q2 U; I+ ?% ^ f8 u
- #向后端传递访客ip( x; l: P0 e- @, r1 R
- #limit_conn one 20;
3 p: W6 @( `" F" z, a - #limit_rate 200k;$ {# }4 e ]8 ^, a4 A; B6 q
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
' S- v% c1 s" J8 Y& j0 S* c$ U - }
* G4 y* h t9 d. ~ - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。- ?3 ? Y9 x/ j8 w% d
* f& [8 Z, w) G D' d# M% ?- /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”表示正常,若有错误请根据错误提示排除问题。8 M d* a" {! d6 s& {
$ M, @% \' h, W i/ m0 e+ K
重启nginx4 T, ]9 k' h' c2 q# z
+ T Z6 y6 s/ X. m( _
0 S" _; [8 ?& P% s6 c/ B& @+ B; ?! K! x5 C& Z; }% V, A
9 |9 z1 N2 e2 Q! S& S/ H
|