Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。% x9 D8 [$ W& _/ P/ z
- L3 D$ ^) q8 Y! d
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则7 W3 ~+ a m7 D" V8 l7 _
- client_body_buffer_size 512k;
8 x0 G' ?2 C0 \( I9 { - proxy_connect_timeout 5;
5 e7 H0 r( y% a& c - proxy_read_timeout 60;4 K6 c6 B% d C' @1 s$ g
- proxy_send_timeout 5;% X5 B! f& o( t4 N5 Q
- proxy_buffer_size 16k;
1 u$ W2 V/ H! X9 C - proxy_buffers 4 64k;
* c% ^6 C+ z) y K% e" ~( f - proxy_busy_buffers_size 128k;$ }) N9 w* M& L5 Q1 P8 q& q# O
- proxy_temp_file_write_size 128k;
( b g3 O3 x3 H* |9 {2 F - proxy_temp_path /home/cache/temp;: |5 @: {# z8 ~4 Q3 X- {& v
- # 配置临时目录
/ V5 q) |5 m0 T - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
! x4 L$ H/ k; i4 S7 b0 g } - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
4 l: G$ ]0 c) {4 ?' x6 r' r9 q" L3 r+ L. u6 s8 o& ~
- mkdir /home/cache/path -p$ p# ~# q0 S0 ~6 n5 s
- mkdir /home/cache/temp& Q' [0 j5 B* A7 t j+ p
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
: k% n' y+ `- v+ U! k' g0 A4 _$ t$ e2 |$ i3 r
. Z4 ~: A0 X' f7 K# _. R0 w
先创建一个“www.wdidc.net”虚拟主机. M7 `1 d- x) O) z# I" W" o
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
6 I/ L. s. q6 R) } o* H3 D/ E- X v1 p {. o! l
删除之前系统生成的代码,填入以下代码,注意修改网址。
; m5 d! F, t$ g- p2 [2 ~- server
8 _) C% ]1 X y - {" ~/ r$ F& E' I+ Y1 |* ?9 C) L
- listen 80;$ n) l" `! J+ f, P8 I4 q+ @& `
- server_name www.wdidc.net;
/ O/ e2 l7 f, N4 R8 U( y1 M! U
* z$ C' b" s6 g- location / {
4 I/ A, B$ I. l% v/ K* { - proxy_cache cache;
0 [7 W& H# d/ w0 \ - proxy_cache_valid 200 304 7d;9 L" @' t1 G0 c! Q6 [
- #200 304状态缓存7天,按实际情况修改, s' m' s$ ?/ U& [
- #其他状态缓存(如502 404)10秒' S2 z, [8 P7 ?
- proxy_cache_valid any 10s;
7 s: b% Q+ @, {6 ?! ^ - proxy_cache_key "$scheme$host$request_uri";
& I( \! n9 f9 |* `8 b - #缓存key规则,用于自动清除缓存。
' B6 B* t9 m% h - proxy_pass https://bbs.wdidc.net/;; R' s: u0 w" U7 ?$ e
- proxy_redirect off;& F7 a$ }4 T3 d1 g& v0 {
- proxy_set_header X-Real-IP $remote_addr;
, `1 |" l, c+ W8 m' _7 g& Z - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;- s/ m/ A0 M0 i ^+ C$ A* c
- #向后端传递访客ip
0 ]8 I$ _ V s. `4 g+ t6 | - #limit_conn one 20;; {: }( P3 R3 v& q
- #limit_rate 200k;
/ K1 X1 M0 L% L" q8 d$ G! c - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#0 s9 |6 O3 x$ [* a- L! h
- }
* [$ J8 O4 g ^9 a' |# u - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
) h, i* ]$ H) o. O' W' k
* v! o. v! n3 D- /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”表示正常,若有错误请根据错误提示排除问题。
3 `; t8 K+ u k2 u" P X7 r
: G( B7 F" }/ U I w! J重启nginx D R/ ~/ K0 Z/ g3 _
- K5 F7 M/ J$ j* h7 X
) r6 b' b& q: \
( g) k7 }* }" k; {4 w) n: @
# c: U1 J6 A" h/ r |2 ?5 K" N! O. F
|