模拟域名及nginx反向代理解决端口映射
<p><span class="md-plain md-expand">修改本地的host为:</span><span class="md-plain md-expand"> </span></p><p> 127.0.0.1 www.xxx.com<br> 127.0.0.1 api.xxx.com<br> 127.0.0.1 manage.xxx.com<br> 127.0.0.1 image.xxx.com</p>
<p>配置解读:以后访问域名www.xxx.com就相当于访问127.0.0.1,</p>
<p class="md-end-block md-p"><span class="md-plain">虽然域名解决了,但是现在如果我们要访问,还得自己加上端口:<span>http://www.xxx.com:8080<span class="md-plain">。</span></span></span></p>
<p class="md-end-block md-p"><span class="md-plain">这就不够优雅了。我们希望的是直接域名访问:<span>http://www.xxx.com<span class="md-plain">。这种情况下端口默认是80,如何才能把请求转移到8080端口呢?</span></span></span></p>
<p class="md-end-block md-p md-focus"><span class="md-plain">这里就要用到反向代理工具:Nginx</span></p>
<p> </p>
<p><span class="md-plain md-expand">先在nginx主配置文件<span><code>nginx.conf</code><span class="md-plain">中使用include指令引用我们的配置:</span></span></span></p>
<p><span class="md-plain md-expand"> include vhost/*.conf;</span></p>
<p><span class="md-plain md-expand"><img src="https://img2018.cnblogs.com/blog/1835763/201911/1835763-20191104094059324-1328148369.png"></span></p>
<p> </p>
<p> </p>
<p> </p>
<p><span class="md-plain md-expand">然后在nginx.conf所在目录新建文件夹vhost:</span></p>
<p><span class="md-plain md-expand">并在vhost中创建文件xxx.conf,填写下面的配置:</span></p>
<p> upstream xxx-manage{<br> server 127.0.0.1:9001;</p>
<p> <span style="color: rgba(255, 0, 0, 1)"># server id地址:端口,可配多个形成集群</span><br> }<br> upstream xxx-gateway{<br> server 127.0.0.1:10010;<br> }<br> upstream xxx-portal{<br> server 127.0.0.1:9002;<br> }</p>
<p> server {<br> listen 80;<br> server_namemanage.xxx.com;<br> <br> location / {<br> proxy_pass http://xxx-manage; <br> proxy_connect_timeout 600;<br> proxy_read_timeout 5000;<br> }<br> }<br> server {<br> listen 80;<br> server_namewww.xxx.com;<br> <br> location / {<br> proxy_pass http://xxx-portal;<br> proxy_connect_timeout 600;<br> proxy_read_timeout 5000;<br> }<br> }<br> server {<br> listen 80;<br> server_nameapi.xxx.com;<br> <br> location / {<br> proxy_pass http://xxx-gateway;<br> proxy_connect_timeout 600;<br> proxy_read_timeout 5000;<br> }<br> }</p>
<p> </p><br><br>
来源:https://www.cnblogs.com/3hhh/p/11790633.html
頁:
[1]