Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。: H, W& g4 K( Y! F y/ K4 P) Y5 N
' u# O8 {2 N( i0 t9 \8 T! F& K( x: `, }- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
, w7 U& t( p I# M( [% \: U0 k- client_body_buffer_size 512k;
3 n$ U b) q3 ]3 i; p: z - proxy_connect_timeout 5;2 [' s' C4 `- N8 j Q( a
- proxy_read_timeout 60;2 u" s1 H" ?7 M4 b. \5 p
- proxy_send_timeout 5;
7 O: D" P D0 E# L( a& n3 c/ M - proxy_buffer_size 16k;) G* z2 {- X, K1 S }
- proxy_buffers 4 64k;3 p0 T$ S7 O8 W
- proxy_busy_buffers_size 128k;
$ c3 I3 s+ C9 v4 Y2 P8 o - proxy_temp_file_write_size 128k;: |* z! P+ J& s+ ?
- proxy_temp_path /home/cache/temp;
9 H) y2 z" l" v4 ]8 V - # 配置临时目录
; ^ _# f9 Y. ?3 Z6 W - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;" r9 A2 x9 P7 H9 A8 j( F
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:0 b/ V; F. O# {5 T O3 c! t
6 k8 g* z* t. R X
- mkdir /home/cache/path -p
( N$ M, x" j. @& E. |- ~6 V - mkdir /home/cache/temp2 q! f+ V5 d. w/ f* I! b& n1 ~
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
$ C5 N1 x+ G* k; F
: n& H5 g; b! v& a3 [7 r
" F# G5 G# H/ K7 u先创建一个“www.wdidc.net”虚拟主机# m) J$ z6 q2 l4 _$ @3 W
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
8 e7 ]+ t( N% F" I5 R8 ?; W! J' w7 v+ l! y2 x3 Z9 n
删除之前系统生成的代码,填入以下代码,注意修改网址。6 j$ \. ~* ]' x. V- e6 D
- server) g+ z! H! f! P' e( K( \
- {
( d/ T9 `$ v% E: ~ - listen 80;
, S: c4 j6 u3 K7 Q& H - server_name www.wdidc.net;
2 P# S3 P) y: |
3 e3 g. Z- M5 q9 c1 S9 m9 P& {/ e- location / {
! @. J: {4 y7 ` - proxy_cache cache;
2 }4 k! A6 ~; C& b) {8 i0 j! g7 |5 d I - proxy_cache_valid 200 304 7d;. j9 m: x5 g1 t3 i
- #200 304状态缓存7天,按实际情况修改
m! |4 E% {! i! R' w - #其他状态缓存(如502 404)10秒
- i# C7 H1 N6 r, b, X! j6 w% z - proxy_cache_valid any 10s;2 Y& A, h* X: ~! U, Y
- proxy_cache_key "$scheme$host$request_uri";
4 b4 e/ V$ @, d - #缓存key规则,用于自动清除缓存。) \6 b" _: q* ~' a+ }
- proxy_pass https://bbs.wdidc.net/;
1 i: e* h) U7 q - proxy_redirect off;; ^8 u1 `' v* p8 {: |
- proxy_set_header X-Real-IP $remote_addr;
. f! N ?. a4 ]* Z/ o - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- k% u7 r N( e2 a# N; w/ } - #向后端传递访客ip
; w9 o$ ]1 C/ ]! d2 R( P6 ?# K& h - #limit_conn one 20;/ c/ Y h- O {+ K" Y0 o: s: r
- #limit_rate 200k;2 X9 N+ `+ I, R
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
3 u6 b7 f5 s6 x$ ?1 N - }
+ Z8 R5 ?/ w4 p% } - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。* a# J) S o; l7 e4 Y- @
; {6 [% d* w+ `$ I8 x& h
- /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”表示正常,若有错误请根据错误提示排除问题。2 I+ V% v: S3 N8 q! O0 h' U
0 ]: w% k$ _, }/ U- A: X
重启nginx
7 o" i7 R+ N$ n4 s# C ^4 x0 T. ]( i N8 k
6 {: {& Q, O8 Z. V! T4 h/ D+ T
6 W9 l' i( K) O1 f' T
" L, `# E3 V5 m0 C( P
|