Nginx前后端分离采用二级域名无端口配置

前后端分离的项目发布在同一台服务器上,服务器只有一个公网ip,也就只有一个80端口,而假设前端项目已经运行在80端口上了,而项目中又要用到微信授权等就必须要后端运行在80端口上才行,这个时候就可以用nginx进行反向代理配置了。

首先配置前端项目,进入到nginx安装目录的conf文件夹:

vim nginx.conf

在http模块下添加以下配置:

#mobile
server {
      listen       80;
      server_name  m.yfytianxia.com;
      location / {
        root html;
        index  index.html;
      }
}

这里,我把前端打包好的静态代码放在nginx安装目录下的html文件夹

085956_VwFu_1866080.png

这样前端的配置ok了,接下来配置后端项目:

在http模块下再添加一个server配置:

#admin
server {
      listen       80;
      server_name  www.yfytianxia.com;
      location / {
          proxy_pass http://www.yfytianxia.com:8080;
          include proxy.conf;
      }
}

可以看到我们将8080端口的应用代理到了80端口上,并且对外的访问域名为www.yfytianxia.com,

proxy.conf的配置如下:

proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;  #获取真实ip
proxy_set_header X-Forwarded_For $proxy_add_x_forwarded_for;  #获取代理者的真实

client_max_body_size 300m;    #允许客户端请求的最大单个文件字节数
client_body_buffer_size 128k;   #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout 90;     #跟后端服务器连接的超时时间_发起握手等待响应超时时间
proxy_send_timeout 90;        #后端服务器数据回传时间_就是在规定时间内后端服务器必须传完所有的数据
proxy_read_timeout 90;        #连接成功后_等待后端服务器响应时间_其实已经进入后端的排队之中等待处理
proxy_buffer_size 4k;          #设置请求缓存区_这个缓存区会保存用户的头信息以供nginx进行规则处理_一般只要能保存下头信息即可
proxy_buffers 4 32k;           #同上告诉nginx保存单个用的几个Buffer最大用多少空间
proxy_busy_buffers_size 64k;    #如果系统忙碌时候可以申请更大的proxy_buffers 官方推荐*2
proxy_temp_file_write_size 64k;  #缓存临时文件的大小
proxy_intercept_errors on;

保存nginx.conf接着我们需要修改tomcat的server.xml文件配置,找到Host配置(如果你没有添加多个Host):

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

默认name为localhost,我们将它改成 www.yfytianxia.com,也就是和nginx配置文件中的#admin中的server_name对应,保存server.xml。接着修改hosts文件:

vi /etc/hosts

修改127.0.0.1的配置:

127.0.0.1   www.yfytianxia.com m.yfytianxia.com

保存后重启tomcat(这里我已经将tomcat配置为服务):

service tomcat restart

重启nginx(/nginx/sbin下):

./nginx -s reload

前提是:

我已经将m.yfytianxia.com和www.yfytianxia.com都解析到了我的服务器公网ip上了!

最后的最后,我们访问下这两个域名,发现都可以打开(如果打不开,或者跳转达到114,可能原因是域名解析未生效,过段时间再访问即可)

 

 

 

 

转载于:https://my.oschina.net/junko2013/blog/1590160

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值