Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。
2 }' q, J1 _7 F/ ^' z3 l: }- [+ F5 ^+ A- N& G4 |
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
+ o, o7 H+ f" R( O- m" T _0 _- client_body_buffer_size 512k;
: o: b! C& q2 p6 j6 o4 }! h0 M* D - proxy_connect_timeout 5;
# f/ x9 [. Z- O. }% g/ m4 l - proxy_read_timeout 60;/ i3 B8 q, f. q: q
- proxy_send_timeout 5;/ T4 v1 _1 Y6 @( u. g6 G
- proxy_buffer_size 16k;
: |& z, h0 v4 P - proxy_buffers 4 64k;. [0 ]8 R \/ n- \$ D$ J
- proxy_busy_buffers_size 128k;0 x% ^& q9 v) T- e
- proxy_temp_file_write_size 128k;
+ s- Z; ^6 A( u2 h. m0 [ - proxy_temp_path /home/cache/temp;
4 `; W' a" A4 G# a: {: w - # 配置临时目录2 B3 C: b: E/ S2 |
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;9 H- D! c+ w% ]* |" ^( K
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:4 }, U" K3 y8 |4 D! q
+ {: P9 }: F4 [% }* c
- mkdir /home/cache/path -p: b+ O3 Y6 ^2 q. M; i
- mkdir /home/cache/temp5 n# P: O" @0 H* A1 u1 h
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限- X9 p, k: ^3 c Q
: @) t2 m1 \9 Q
4 q6 { b {# X3 I6 _/ L6 w
先创建一个“www.wdidc.net”虚拟主机
9 f: C! W# t+ N- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
! k* \9 D) f6 ~9 E0 F& p
( y5 P5 x6 e4 S4 ~& i删除之前系统生成的代码,填入以下代码,注意修改网址。- o4 y# L% G- X4 o, |' q& y
- server
6 j8 n3 t' b1 r! n& ?1 Y& R - {
7 O; ?$ X8 L6 ~8 D4 J# Q - listen 80;
: ]. t6 }* T2 o# E3 D' @' C( q& k - server_name www.wdidc.net;
- \ [5 {* ~# G2 D- I3 B
+ M5 m# C1 w# v- Z- r- location / {0 n5 i8 u. x$ p* [) \+ [
- proxy_cache cache;8 L6 K+ t1 ~4 y. y# @
- proxy_cache_valid 200 304 7d;. Y a$ j* q. y0 [* q
- #200 304状态缓存7天,按实际情况修改
1 z1 Y" p: C7 ?" o" @ - #其他状态缓存(如502 404)10秒
3 U4 W, X; U- z4 F - proxy_cache_valid any 10s;
j; z, o$ I7 u& u - proxy_cache_key "$scheme$host$request_uri";" z7 B& _ W$ ~0 H6 ?
- #缓存key规则,用于自动清除缓存。0 U$ @+ V$ Z! ~, B; D
- proxy_pass https://bbs.wdidc.net/;3 I/ A' @) P' B/ y0 V* Z
- proxy_redirect off;' B! @2 [. T! a/ R* z$ `
- proxy_set_header X-Real-IP $remote_addr;
! e7 q& P# d/ B8 V' ? - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
! X1 [0 B+ {$ o! p q - #向后端传递访客ip! ~6 [6 _! G3 ^& R$ z: k5 W
- #limit_conn one 20;/ O/ x( g% R0 e1 C/ [
- #limit_rate 200k;
% }9 o' f( S. H" F - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#2 i3 O( A* ?4 y" q
- }
0 N: S3 C" p r1 J0 R/ a% H( o- E0 [ - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。/ X: Q+ [4 a$ ]. b9 K I
8 N4 G8 e7 G, T5 s- /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 r& J; b6 L$ [& i( \$ m! K3 M: L8 ^# F O6 b9 j
重启nginx
/ \7 G3 e+ l1 T: U
+ F. Y+ b! Q, N) w
2 ~* y$ `9 x8 t- }8 i6 _6 n' H7 }
5 J' d2 x& i, z9 Y0 p- s+ q
|