Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。
; t, z, S1 e0 S: o8 s* _8 ~( h$ ?& i% y# H. n, `! X
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则6 n1 Q6 T# O$ y
- client_body_buffer_size 512k;
6 Y' d e) x* M3 M5 z - proxy_connect_timeout 5;) C# N' q# a3 w. z3 O
- proxy_read_timeout 60;/ ~. N$ _7 }- J, w0 b% |
- proxy_send_timeout 5;' j: i4 ~1 A2 l X! }, }
- proxy_buffer_size 16k;
3 y* }$ _/ q& F" g% Z5 f - proxy_buffers 4 64k;
9 X% S! U u4 \. F: s - proxy_busy_buffers_size 128k;
: I# J+ F0 ]' N - proxy_temp_file_write_size 128k;% s( Z; t/ H# ~# z; a4 k0 Y
- proxy_temp_path /home/cache/temp;
% _' v8 Z7 b' ]* f9 @ - # 配置临时目录
7 q; @* R H2 Z! f8 E# ?9 { - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;* z: L6 Z( l- |, j$ s
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
+ Y" D* v9 A% @1 N5 k+ e
1 v8 T7 U6 n* E& _# J- mkdir /home/cache/path -p
: ~; H2 c. h5 Q - mkdir /home/cache/temp* e, o7 Q! V4 Q; A
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
7 U" t, b: s2 ] Q6 J4 L. A/ @( r4 s" u% ~* f7 K: g* ?/ m" O7 g* ~+ B6 K
) d2 R0 o, \/ @
先创建一个“www.wdidc.net”虚拟主机
# o* e2 M4 P* l& J3 i3 F$ Y4 k q) _; @- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。9 R) Y- A, q0 S$ h
) B. k: |, G: G6 X" R9 ^" @. {
删除之前系统生成的代码,填入以下代码,注意修改网址。( Q; O4 o8 w i( U7 E
- server
8 d" @5 A/ ^( k9 l/ F7 M! V, s - {
$ h5 K/ m& Z- v* h }4 ?- x - listen 80;# W7 C' G( V5 S0 Z8 X% ~
- server_name www.wdidc.net;
& U" p E/ d8 c+ M( R$ U9 H
& j1 J. l; N7 q- location / {
+ J& A. R$ s8 i! E0 o - proxy_cache cache;. G) e( O7 v' q+ A5 H# F
- proxy_cache_valid 200 304 7d;
6 B3 m% H2 \/ T - #200 304状态缓存7天,按实际情况修改
2 `& a, D/ W; d7 f: e2 | - #其他状态缓存(如502 404)10秒% C5 j' F7 v3 J# g
- proxy_cache_valid any 10s;1 ]6 K& j0 \9 `+ [( ?3 D
- proxy_cache_key "$scheme$host$request_uri";
- ~% w# M6 e, ^, ^ - #缓存key规则,用于自动清除缓存。
: f! [' f4 j" W$ a V3 q% p. z - proxy_pass https://bbs.wdidc.net/;
+ I# i$ j# S- \4 M - proxy_redirect off;
. y( c4 v# R4 I! a5 V3 \1 V - proxy_set_header X-Real-IP $remote_addr;
1 Y7 w7 s. U0 z0 A8 u1 ~( h - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;9 i% H5 d5 N7 ?0 Q& h5 Y! L
- #向后端传递访客ip$ q. ` k# y; U5 F7 x
- #limit_conn one 20;
" k4 J8 k: R$ S! y2 P; `/ ` - #limit_rate 200k;
( _# C8 R3 |9 Q - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#/ W n" [' ?9 q/ t+ n8 i5 h8 x
- }
: @' P8 _. h" E - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。) }- E5 B; P4 {7 t$ S$ Y
5 K# t. j% L0 W3 f7 n
- /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”表示正常,若有错误请根据错误提示排除问题。0 k9 m+ S( Z7 Y2 E9 A
- |- o" I, R4 I9 g
重启nginx s& A& s' K, D5 n* `5 W8 j8 B
* [6 n; c9 r9 B, g( H
: H$ y/ Y6 j1 M( U
9 ~3 X+ f4 a$ E2 A4 `' \% j1 e9 l& T8 M
|