nginx反向攻略指南
nginx严格定义上来说是一个不折不扣的反向代理服务器,用来做前端非常不错!
aptitude install gcc g++ vim libncurses5-dev make libxml2-dev
apt-get -y install subversion
apt-get install libpcre3 libpcre3-dev libcurl4-openssl-dev
wget -c http://nginx.org/download/nginx-1.0.5.tar.gz
tar -zxf nginx-1.0.5.tar.gz
wget -c http://wiki.nginx.org/images/5/51/Nginx-accesskey-2.0.3.tar.gz
tar -zxf Nginx-accesskey-2.0.3.tar.gz
svn checkout http://substitutions4nginx.googlecode.com/svn/trunk/ substitutions4nginx-read-only
curdir=$(pwd)
cd nginx-1.0.5
./configure --user=nobody --group=nobody --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --pid-path=/var/run/nginx.pid --conf-path=/etc/nginx/nginx.conf --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-pcre --with-http_sub_module --add-module=$curdir/substitutions4nginx-read-only --add-module=$curdir/nginx-accesskey-2.0.3
make
make install
nginx安装过程就这样了,如果已经安装过nginx的可以搜索下nginx升级的方法来完成!
编译参数里面的--with-http_sub_module --add-module=$curdir/substitutions4nginx-read-only --add-module=$curdir/nginx-accesskey-2.0.3 保留其他自行斟酌更改,这里就不罗嗦了!
substitutions4ngin是用来做替换,支持正则式!
nginx-accesskey和本文关系不大,主要作用是用于封IP访问和防盗链之用!
然后是nginx.conf的配置,基本配置就不阐述了,下面贴一个反向hostloc论坛的实例
server{
listen 80;
server_name bbs.kvm.la; #绑定的域名
root /var/www/html; #网站目录(搭配lnamp的时候有用处!)
access_log off; #off 关闭日志
location / {
subs_filter 'www.hostloc.com' 'bbs.kvm.la' gi; #substitutions4nginx替换 (使用方法参照官方)
subs_filter '全球主机交流论坛' '全球主机网' gi; #substitutions4nginx替换 (使用方法参照官方)
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Referer http://www.hostloc.com; #强制定义Referer,程序验证判断会用到
proxy_set_header Host www.hostloc.com; #定义主机头,如果目标站点绑定的域名个server_name项的吻合则使用$host
proxy_pass http://174.127.189.179; #指定目标,建议使用IP或者nginx自定义池
proxy_set_header Accept-Encoding ""; #清除编码
}
}
更多详细Proxy设置参考nginx官方wiki说明:http://wiki.nginx.org/HttpProxyModule
none
[...]http://www.kvm.la/2011/09/26/33.html[...]