作者:nnbji | 来源:互联网 | 2014-05-28 09:40
第一次看到nginx的反向代理,觉得是一门高深的技术,但详细了解后才发现,其实很简单。什么是反向代理反向代理,是以代理服务器来接受internet连接请求,然后,再把请求转发给另外的服务器。本来,我一直用不到反向代理,就没有弄过,刚好,前几天在EWSIDC
第一次看到
nginx的
反向代理,觉得是一门高深的技术,但详细了解后才发现,其实很简单。
什么是反向代理
反向代理,是以代理服务器来接受internet连接请求,然后,再把请求转发给另外的服务器。
本来,我一直用不到反向代理,就没有弄过,刚好,前几天在EWSIDC上的一个空间因为域名(imzhaorong.com)BA的问题,不让绑定了,只能通过系统提供的三级域名访问。但我仍然希望用原来的顶级域名访问这个空间的内容,怎么办呢?利用手中的VPS,做反向代理。下面,我们来看详细的过程。
首先说说大致的环境。我使用的未BA的顶级域名是imzhaorong.com,EWSIDC提供的3级域名是1e01f.wi.ipc.la,我使用的VPS为Host1Plus的1美元的云VPS,已经装好LNMP。
首先,我们需要将域名imzhaorong.com解析A记录到VPS的IP地址;
然后,修改nginx配置文件。这篇教程里,我们将VPS的nginx.conf下载到本地修改(文件目录位于/usr/local/nginx/conf/)。
我先上一个截图:
图中蓝色的部分,就是我们添加的代码,之所以多此一举上一个图片,主要是给大家注意代码添加的位置,赵容之前就弄错了地方,幸得四师兄提点,下面,我再贴上代码:
server {
listen
80;
server_name
imzhaorong.com;
location / {
proxy_pass
http://1e01f.wi.ipc.la/;
proxy_redirect
off;
proxy_set_header
X-Real-IP
$remote_addr;
proxy_set_header
X-Forwarded-For
$proxy_add_x_forwarded_for;
}
}
修改完后,我们先执行:
/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
则正常,否则按错误提示修改配置,错误提示会精确到哪一行的。
最后执行
kill -HUP `cat /usr/local/nginx/logs/nginx.pid`
使配置生效,如果你的域名解析也生效了的话,应该就可以直接通过顶级域名访问了。
关于反向代理的用处,还是挺多的,大家自己去发掘吧。