Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。0 y( |7 h. I0 a- I
* n! j9 x: A! l8 ^- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
( `$ N9 N7 z% E3 U- client_body_buffer_size 512k;9 z0 x6 {+ m7 ~& m' R- \
- proxy_connect_timeout 5;
4 z) w4 F! [; W. {. H5 k/ A - proxy_read_timeout 60;4 |6 M5 a$ J" }, X# y6 @
- proxy_send_timeout 5; [; I( ^$ X8 j; L# M
- proxy_buffer_size 16k;
+ P: R, f/ C9 J' l - proxy_buffers 4 64k;
, C: `' `2 Q6 C. P3 H& A0 l - proxy_busy_buffers_size 128k;6 m r ^1 |6 |8 [. ~& E
- proxy_temp_file_write_size 128k;! I" T: S7 Q" i, o- A* p! D+ N
- proxy_temp_path /home/cache/temp;; ^2 x: R( i8 C% z
- # 配置临时目录+ I- _* \9 n' m
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;9 L& ?0 t- o' H- Z1 D
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
& ~ K2 W2 U, |+ x: r
( I D D! S6 O( z7 E8 W- mkdir /home/cache/path -p
: Y: U. G: E3 a9 W - mkdir /home/cache/temp
) w7 g0 @8 a7 D" }; y - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限" U8 @( s+ ?0 K0 Z! D/ i/ {- `& i
9 l/ h6 e2 O5 K2 b2 r1 M
. I, R* i% h' Q, ^% D g: q( v; U
先创建一个“www.wdidc.net”虚拟主机
8 w/ `$ ]6 t4 v) V- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
: g8 J+ V' {# p$ A: f; C' d4 ?: W" J* C2 [4 \- z! d
删除之前系统生成的代码,填入以下代码,注意修改网址。
4 E0 y- o( g+ h- server
6 z4 l6 [. c/ F% _0 T6 m - {. c9 j" }+ u& _5 |9 U" {. F3 U
- listen 80;9 C+ l$ k6 u( R5 I
- server_name www.wdidc.net;
4 `7 f, j7 X: e W9 b$ x6 _$ P6 n
# Q5 H& T+ k5 N: U5 u- location / {# e+ R$ G: {6 O, N) f" q8 g
- proxy_cache cache;1 [; i _: e4 W/ ~/ u
- proxy_cache_valid 200 304 7d;
% k2 w; t# L3 ? - #200 304状态缓存7天,按实际情况修改* v3 _" I1 z5 l
- #其他状态缓存(如502 404)10秒& C/ r, f$ S" m" A+ h
- proxy_cache_valid any 10s;$ m! N' s8 n" H! n9 j: J, }1 w
- proxy_cache_key "$scheme$host$request_uri";# E4 E# s. d5 [0 K: t; s, S6 A0 Y
- #缓存key规则,用于自动清除缓存。
' C6 M5 O" E: ~) J - proxy_pass https://bbs.wdidc.net/;" `5 i1 K' G3 c! K
- proxy_redirect off;5 Q- T# W. _6 c- I+ ?
- proxy_set_header X-Real-IP $remote_addr;& I* C. h* B( V$ G
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;) y! r$ q; p; G! f$ j K7 s& a: Z
- #向后端传递访客ip, A1 q4 S( Q6 C! o- F' f z% x
- #limit_conn one 20;
" u- s0 N v# [6 e% |7 v1 t - #limit_rate 200k;$ ^: R* B9 W2 Y3 @; ~7 a$ a1 }# b4 l
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
- }! Y6 h$ ~$ y - }
# D# J+ D2 w1 l' a7 _7 g6 E- H - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。0 I: j* {: d$ a6 {
+ n- S( X. g. T8 c# 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”表示正常,若有错误请根据错误提示排除问题。! E, \1 c- a" C T4 K6 d7 e1 B
) q" L9 m4 Y! Q+ T
重启nginx
% q( t' a! W: x0 |0 q" x% J7 }
7 o! P% E0 _1 b. A, h
9 r2 \1 Z- D& Y, {( ~1 B
! V( X7 w9 ` T0 z+ _( x2 \# O1 `7 ~
|