参考地址:
Nginx反向代理不同域名到不同端口/路径(HTTP版)
问题
公司项目前后端分离两个项目都发布在阿里云服务器上,但是只有一个域名,使用的端口不一样,不希望通过域名加端口号的方式访问项目。例如有一个域名baid.com,前端项目端口是744,后端项目端口745,配置完成之后就是a.baid.com访问的是前端项目,b.baid.com访问的是后端项目。话不多说直接进入正题
阿里云域名解析处添加对应的解析
修改nginx配置
#拦截域名后缀为chiplink.ic-edu.com.cn的请求,可以拦截www.chiplink.ic-edu.com.cn二级域名直接拦截
server {
listen 80;
server_name study.ic-edu.com.cn;
location / {
# 修改转发请求头,让905端口的应用可以受到真实的请求
proxy_set_header Host $proxy_host;
#记录远程访问ip,方便应用中获取
proxy_set_header X-Real-IP $remote_addr;
#可以通过X-Forwarded-For获得用户ip
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#统一转发到905端口
proxy_pass http://ip:905;
}
}
- 重启nginx:
/usr/local/nginx/sbin/nginx -s reload