/ 中存储网

nginx服务器反向代理详细配置

2014-04-19 09:47:01 来源:IT技术网
第一次看到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`

使配置生效,如果你的域名解析也生效了的话,应该就可以直接通过顶级域名访问了。

关于反向代理的用处,还是挺多的,大家自己去发掘吧。