阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Nginx如何配置多个服务域名解析共用80端口

86次阅读
没有评论

共计 1708 个字符,预计需要花费 5 分钟才能阅读完成。

导读 对于 Web 而已,80 端口和 443 端口是十分重要的, 下面这篇文章主要给大家介绍了关于 Nginx 如何配置多个服务域名解析共用 80 端口的相关资料, 文中通过实例代码介绍的非常详细, 需要的朋友可以参考下
前言

由于公司一台服务器同时有多个服务,这些服务通过域名解析都希望监听 80/443 端口直接通过域名访问,比如有 demo.test.com 和 product.test.com。这时候我们可以使用 nginx 的代理转发功能帮我们实现共用 80/443 端口的需求。

备注:由于 HTTP 协议默认监听 80 端口,HTTPS 协议默认监听 443 端口,所以使用浏览器访问 80/443 端口的服务时,可以忽略域名后的“:80/:443”端口,直接配置监听到 80 端口,访问比较方便。

配置 nginx 多服务共用 80 端口

首先找到 nginx 配置文件

 通过 apt-get install nginx 命令安装的 nginx 默认配置文件存放在:/etc/nginx 目录下
  
切换到 /etc/nginx 目录
  
#cd /etc/nginx           #切换到 nginx 目录
  
# ls                     #查看 nginx 目录下文件
conf.d        fastcgi_params  koi-win     modules-available  nginx.conf    scgi_params      sites-enabled  uwsgi_params fastcgi.conf  koi-utf         mime.types  modules-enabled    proxy_params  sites-available  snippets       win-utf
  
#vim nginx.conf          #打开 nginx 配置文件(输入 shift+ i 插入内容,esc 退出编辑,点击 shift+:输入 q 退出当前页,q!强制退出,不保存编辑的内容;输入 wq!强制退出并保存)
以下以两个服务使用域名访问,共用 80 端口为例
方案一:多个不同端口服务共用 80 端口

1)配置 nginx.conf 文件

1. 先配置两个端口服务:// nginx.conf
#demo
server {
    listen       8001;
    server_name localhost;
    try_files $uri $uri/ /index.html;
    root    /home/www/demo;
}
#product
server {
    listen        8002;
    server_name  localhost;
    try_files $uri $uri/ /index.html;
    root    /home/www/product;
}
  
2. 配置代理:// nginx.conf
#demo 转发
server {
    listen       80;
    server_name demo.test.com;
    location / {proxy_pass http://localhost:8001;}
}
#product 转发
server {
    listen       80;
    server_name product.test.com;
    location / {proxy_pass http://localhost:8002;}
}

2)配置完成后重启 nginx 服务

#systemctl restart nginx

3) 如果是本地局域网需要配置网络将对应的端口,我这边是 80,8001,8002 三个端口映射到公网 IP,并解析对应的域名,完成后就可以正常访问了;

方案二:多个服务共用 80 端口

1)配置 nginx.conf 文件

// nginx.conf
# nginx 80 端口配置(监听 demo 二级域名)server {
    listen  80;
    server_name     demo.test.com;
    location / {
        root   /home/www/demo;
        index  index.html index.htm;
    }
}
  
# nginx 80 端口配置(监听 product 二级域名)server {
    listen  80;
    server_name     product.test.com;
    location / {
        root   /home/www/product;
        index  index.html index.htm;
    }
}

2)参考方案一,配置完成后保存,重启 nginx 服务,访问测试。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计1708字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中