Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。/ A& u$ Q" e: x( i( Q9 {
: m4 f) q2 ^4 |- Q8 S% k3 [0 E- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
0 r9 V3 v/ k+ M f- client_body_buffer_size 512k;+ s& ~4 A; B, D% W6 g8 ?8 @, B a* [
- proxy_connect_timeout 5;# G$ D; `. ~5 K8 C9 q" l! V. q
- proxy_read_timeout 60;
5 k3 e+ ?: u' {7 F* R7 V0 B0 [ - proxy_send_timeout 5;$ E% P2 T/ X+ g" @
- proxy_buffer_size 16k;
* F2 X+ y& ?5 g+ D4 d3 f; ?' y - proxy_buffers 4 64k;2 T8 }7 {9 J* N2 F
- proxy_busy_buffers_size 128k;2 S5 l) F( P* z3 G4 Q& l
- proxy_temp_file_write_size 128k;
* h, C. d9 A* y - proxy_temp_path /home/cache/temp;
9 c+ O/ z$ R5 `# O& Z - # 配置临时目录
, e& P8 h$ t5 X" @& [5 f6 W7 s - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
- b" I# Q S; ?$ p0 \5 u - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
8 J5 A6 h$ Z" e. [
K+ h8 Z. i2 Y% D- mkdir /home/cache/path -p
7 A; C% p( n3 s - mkdir /home/cache/temp
Z2 q. U% T! v5 {: k: _ - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限1 U1 P' `; L" m( m- D" B% p
$ A9 }$ r" j3 b6 w0 Q$ U
: p% o! {; b* F! g0 ~( _" T
先创建一个“www.wdidc.net”虚拟主机
7 [) M% U) }. n- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
4 [4 d* B; y0 K4 z
( i+ ?- x) Z2 o4 a- _% q3 ^删除之前系统生成的代码,填入以下代码,注意修改网址。/ ^1 E$ P( g0 S: E% D, J! d( k( c
- server
$ N/ o4 x% B% j! B - {) D- O" f2 g4 N1 x% I
- listen 80;# t2 \. H; L6 e) N/ F* ?
- server_name www.wdidc.net;7 `4 Y$ J( i) K. F
& {9 h) v5 ~& R# U- location / {& M2 T% T Z; m2 J. Z! f
- proxy_cache cache;
- V4 K( Y9 u9 p; p P9 p - proxy_cache_valid 200 304 7d;
: c. ? r: q4 X# A - #200 304状态缓存7天,按实际情况修改
7 z& i8 p8 D6 O) q# q - #其他状态缓存(如502 404)10秒
) g i4 d4 `. m( C) b! o - proxy_cache_valid any 10s;
, b% X3 v3 d; j6 f9 w - proxy_cache_key "$scheme$host$request_uri";+ b8 c( u. h. A* O
- #缓存key规则,用于自动清除缓存。( o2 Z+ D. E+ N
- proxy_pass https://bbs.wdidc.net/;
" _$ B# T" P) H' f+ b s# a3 J& o - proxy_redirect off;4 d0 V2 J) V" [- c0 P. f
- proxy_set_header X-Real-IP $remote_addr;
/ h7 P" k: ]: `5 m - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
9 ^" D3 }# n. n% W) I! k - #向后端传递访客ip, J- h+ N" h D9 P/ n
- #limit_conn one 20;5 F/ U5 V% d( r9 y9 }
- #limit_rate 200k;( Z8 V, t: V$ }$ K
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#6 W( V; m H" Y2 @
- }4 C6 G( {9 X( g9 v+ M8 _# N' o. g
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。% i8 B. L5 Q4 H7 [8 p, c
; ^+ D" Y' e* `* f% ]5 B- /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 }# I9 w9 k5 q: B
& e O) r) Y6 \! O1 J/ Q
重启nginx
. ]/ i0 F5 L6 W3 c
* A' z' K. X$ J* j$ N( X5 v2 |5 v/ \; G. |7 ?
7 j6 |* ~* `, z# v. x7 A& J
6 G4 O5 N4 F7 z# ?- L+ w4 E |