nginx支持一个端口访问多个前端项目(http以及https)

简介: 最近做项目结构优化,前端项目都是部署在nginx上,想实现同一个端口可以访问多个前端项目.

前言


   最近做项目结构优化,前端项目都是部署在nginx上,想实现同一个端口可以访问多个前端项目.这样可以提高服务器的端口复用率,降低项目部署以及维护成本.根据平常的需求,用两台nginx服务器分别支持http、https同一端口访问不同项目。下面将配置方式以及相关注意事项做简单梳理,希望对有相同需求的同学有所帮助,尽量提升效率,专注业务开发!


http方式同一端口访问不同项目


   nginx安装步骤这里不在介绍,有安装需求的同学可以参考:

超详细的linux部署nginx实战记录,直接介绍如何如何配置:

22服务器的8099设置为访问多个项目,关键配置文件如下:

server {
        listen       8099;
        server_name  100.100.100.22;
        # 修改root默认目录
        root         /data/www;
        include /etc/nginx/default.d/*.conf;
  # 项目A
   location /A{
    alias /staticresource/kawa_two_activity/A;
    index index.html;
        }
  # 项目B
  location /B {
  alias /staticresource/kawa_two_activity/B;
  index index.html;
        }
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }


项目部署位置:

/staticresource/kawa_two_activity/A;
/staticresource/kawa_two_activity/B;


项目访问方式:

100.100.100.22:8099/A
100.100.100.22:8099/B


https方式同一端口访问不同项目


   平常的项目中有些三方平台考虑到安全性,会要求服务端提供的链接为https,所以需要支持https访问.nginx默认是不支持https访问的,开启的方式可以参考:nginx中如何开启https访问功能,这里不在讲述,直接看配置文件.实际上同http的部署方式.250服务器80端口部署多个项目.


server {
        listen       80;
        server_name  wx.kwxy.com;
  #将请求转成https
  rewrite ^(.*)$ https://$host$1 permanent;
    }
  server {
    #监听443端口
  listen 443;
  #域名
  server_name wx.kwxy.com; 
  ssl on;
  #ssl证书的pem文件路径
  ssl_certificate  /usr/local/nginx/ssl_cert/kwxy.com.pem;
  #ssl证书的key文件路径
  ssl_certificate_key /usr/local/nginx/ssl_cert/kwxy.com.key;
  # 项目A
  location /A{
    alias        /staticresource/activity/A;
    index       index.html;
  }
  # 项目B
  location /B{
    alias        /staticresource/activity/B;
    index       index.html;
  }
    }


项目部署位置:

/staticresource/activity/A;
/staticresource/activity/B;


项目访问方式:

wx.kwxy.com/A
wx.kwxy.com/B


   实际生产中用两台nginx服务器分别支持http、https基本上能满足大部分需求,后期有时间会看一下如何在一个nginx上同时支持https和http。如果对你有所帮助,欢迎评论区留言点赞!


相关文章
|
8月前
|
Android开发 Kotlin
|
8月前
|
XML JSON API
识别这些API接口定义(http,https,api,RPC,webservice,Restful api ,OpenAPI)
本内容介绍了API相关的术语分类,包括传输协议(HTTP/HTTPS)、接口风格(RESTful、WebService、RPC)及开放程度(API、OpenAPI),帮助理解各类API的特点与应用场景。
|
10月前
|
安全 网络安全 数据安全/隐私保护
网页安全演进:HTTP、HTTPS与HSTS
这整个进程实质上是网页安全由“裸奔”到“穿衣”再到“绑带”的演变史。它保障了数据的机密性和完整性,降低了中间人攻击的风险,最终实现了更自由、更安全的网络环境。但别忘了,技术永远在发展,网络安全的赛跑也永无终点。*ENDPOINT*
698 11
|
11月前
|
运维 安全 网络安全
443端口:HTTPS通信的安全基石
作为互联网安全的基石,443端口通过加密与认证机制,保护了数十亿用户的隐私与数据完整性。无论是开发者、运维人员还是普通用户,理解其原理与作用都至关重要。在享受便利的同时,也需时刻关注安全实践,防范潜在风险。
3372 12
|
11月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
312 18
|
11月前
|
安全 网络协议 算法
HTTP/HTTPS与SOCKS5协议在隧道代理中的兼容性设计解析
本文系统探讨了构建企业级双协议隧道代理系统的挑战与实现。首先对比HTTP/HTTPS和SOCKS5协议特性,分析其在工作模型、连接管理和加密方式上的差异。接着提出兼容性架构设计,包括双协议接入层与统一隧道内核,通过协议识别模块和分层设计实现高效转换。关键技术部分深入解析协议转换引擎、连接管理策略及加密传输方案,并从性能优化、安全增强到典型应用场景全面展开。最后指出未来发展趋势将更高效、安全与智能。
491 1
|
7月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
405 18
|
7月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
665 17
|
7月前
|
编解码 应用服务中间件 Linux
centos配置nginx-rtmp实现ffmpeg转码rtsp为rtmp视频流
centos配置nginx-rtmp实现ffmpeg转码rtsp为rtmp视频流
611 1
下一篇
开通oss服务