Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。
6 c1 f& ?6 H- T6 U/ _: g n' ^: S2 y t0 x+ ]; H
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
: t; s+ d; k! m- K- client_body_buffer_size 512k;0 J8 x0 x7 Z1 g6 [2 D$ s- k; ^
- proxy_connect_timeout 5;' m1 U- G5 ^7 ~4 J
- proxy_read_timeout 60;
" o7 C1 c: d* o* @+ [9 w - proxy_send_timeout 5;+ V# q W# J E, d/ {: E
- proxy_buffer_size 16k;
$ t% y* u0 \3 i' J4 H2 u3 n; v - proxy_buffers 4 64k;! x1 y/ O/ k+ [
- proxy_busy_buffers_size 128k;
3 F0 t& _& H/ E3 J - proxy_temp_file_write_size 128k;- z; B2 N2 J( A
- proxy_temp_path /home/cache/temp;
1 J8 t' E' P5 |- o - # 配置临时目录/ P8 b6 E( f( n+ X
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;8 O9 M9 i1 |/ z/ z) F( i( D
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:/ x. B4 y% U0 y6 c+ \$ Y' ~
; f1 s- e9 q, N. v) c
- mkdir /home/cache/path -p
2 q. |! u- j! x1 N - mkdir /home/cache/temp
( h4 P) r& m5 g u - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
" B, G# A W$ j) ^7 J$ Z4 \1 m# q/ @! A' \
% B* N7 B5 ^1 q' C- ^
先创建一个“www.wdidc.net”虚拟主机) Q7 W' d. J H" T% A
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。. B4 L9 h1 Y' r* `. n9 b; I
/ R" ]# f4 h! Y( `删除之前系统生成的代码,填入以下代码,注意修改网址。# v" g& X0 P @& T7 g: p
- server
5 R) U3 m R9 u. ] - {
5 H- E$ @' U5 @' u - listen 80;
# v$ L, i: W6 f' i5 n - server_name www.wdidc.net;
. B; O7 h' ]" a" E$ S, Y
! z0 E/ ^' K" B/ E- location / {! \2 ?, e+ H7 a1 L8 p/ P' y
- proxy_cache cache;) V) o4 I9 t" A4 W8 ]6 T
- proxy_cache_valid 200 304 7d;
9 V" V" K. b% L& D n - #200 304状态缓存7天,按实际情况修改
- k# e! K% D' A- x' z9 K9 Y - #其他状态缓存(如502 404)10秒
3 D# t7 D2 E6 H6 D - proxy_cache_valid any 10s;. `# X2 t- i1 h/ o& X+ G/ e( c
- proxy_cache_key "$scheme$host$request_uri";
0 i( I5 {( l8 a7 z# ` - #缓存key规则,用于自动清除缓存。
; b1 _- ^+ A- B9 [* \9 ^/ W; I - proxy_pass https://bbs.wdidc.net/;" ` P% {9 L- i6 i: k
- proxy_redirect off;
0 g8 s9 M$ h3 U - proxy_set_header X-Real-IP $remote_addr;: C6 G# X2 @+ g1 Z- |
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;$ r2 @- T8 b$ K" b5 A% } a2 Q
- #向后端传递访客ip
$ N1 _2 p6 {; i/ p' x" |& s5 Z% q - #limit_conn one 20;
% T0 X4 y# @! }6 F - #limit_rate 200k;
7 q7 j! E4 ?2 b J - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
) f; Q, W$ ^& @, d K7 v - }
* R1 o, B7 t7 ?0 K- e- I - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。7 h* f# L7 A1 ~
! G9 B6 \0 U4 }" @
- /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”表示正常,若有错误请根据错误提示排除问题。$ @1 G% W: ]; R/ X4 ~
0 q5 p$ g; B5 u. l重启nginx
" j( d4 q8 e2 B1 w- l- \
" h( P; _) |# S* q' U, U0 ~' N' E& V x
7 `% l/ k2 T" x% \$ n4 h. @
. J1 ?7 T& n! u0 Z |