一聚教程网:一个值得你收藏的教程网站

热门教程

Ngnix反向代理绑定域名

时间:2022-06-30 18:47:54 编辑:袖梨 来源:一聚教程网

最近小站入手了一台阿里云服务器,其实是因为国外的服务器太卡了,连SSH连接都卡,根本没法用了,所以入手一台,但是那台国外的VPS更换了母鸡,中国电信的出口宽带又正常了,这样有了两台,正好最近又在看《实战Nginx》,又在网站看到了很多关于Ngnix代理的文章,所以打算实际动手试验一下:

1.首先反向代理的原理图来解析一下,给出一张来自互联网的图片:

Ngnix反向代理绑定域名jquery1391843982234="32" />

从这张图可以看出,代理服务器处在客户端与服务器中间,所以可以兼做防火墙使用,现在小站手上其实有好多台VPS,但是闲置下来的只有两台,所以就使用一下,一台作为网站服务器,一台作为代理服务器。

2.在代理服务器端的设置应该首先安装WEB服务器,可以使用apache,但是为了轻巧,这里使用的是Nginx,小站采用的是LNMP脚本,在/usr/local/nginx/conf/下可以找到ngnix的配置文件nginx.conf,为了试验,我们首先把域名解析过来,取一个二级子域名:http://test.defel.net,在DNSPOD解析到代理服务器:

Ngnix反向代理绑定域名此处只是实验时下,可能以后会失效,所以不展示具体的IP了。设置代理服务器端新建一个虚拟服务器,启动vhost.sh,之后输入域名test.defel.net,然后一路y基本上就差不多了:

Ngnix反向代理绑定域名虚拟服务器建立完成之后进入到/usr/local/ngnix/conf/vhost目录下,编辑配置文件,先删除其中全部内容,然后在复制以下内容并修改图中所示:

Ngnix反向代理绑定域名以下是代码(将其中的服务器IP地址替换为真实的底层网站服务器IP):

 代码如下 复制代码

server
 {
 listen 80;
 server_name test.defel.net;
 location / {
 proxy_pass http://服务器IP地址:8080;
 proxy_redirect off;
 if ($request_filename ~* .*.(gif|jpg|jpeg|png|bmp|swf)$)
 {
 expires 30d;
 }
 if ($request_filename ~ .*.(js|css)?$)
 {
 expires 12h;
 }
 proxy_set_header Host 服务器IP地址;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header Content-Type $content_type;
 #proxy_hide_header Content-Type;
 }
 }

此处的目标端口是8080,代理服务器将会通过8080端口代理底层的网站服务器,所以在接下来的网站服务器的配置中,就要使Ngnix监听8080端口,一旦代理端发起请求,及时响应,设置完成之后使用

1
nginx -t

测试配置文件是否有错误,出现nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok和nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful表示修改代码正确,之后使用命令

1
kill -HUP `cat /data/nginx/logs/nginx.pid`

平滑重启Ngnix。

3.设置网站服务器的配置文件,这里采用的是阿里云服务器,同样和代理服务器配置一样建立一个域名为test.defel.net的虚拟服务器,进入vhost文件夹下,更改其配置文件,在这个网站服务器上就不需要大动干戈全部更改,只需要更改一下其中的监听端口即可:

Ngnix反向代理绑定域名

设置完成之后使用nginx -t检查一下配置文件有没有错误,改一个端口,应该不会有什么错误吧,所以我们重启一下Nginx,之后就可以使用域名http://test.defel.net访问测试了,记得之前先清理一下浏览器缓存,保证解析的正确性。

4.访问如下图:

Ngnix反向代理绑定域名

这是我随便找了一个静态页面上传到了阿里云的服务器网站根目录下,只是为了看起来比单纯的hello world好看一点而已。

5.下面是路由追踪信息:

Ngnix反向代理绑定域名

路由器的追踪效果可以看出是无法查询网站的服务器IP地址的,其次网站的打开速度并不完全能由追踪信息反映出,我架设完成之后打开网站速度还是非常之快的,感觉很不错,速度也不错,喜欢的朋友可以试试,自己动动手。

热门栏目