您的位置:首页 > 娱乐 > 明星 > 济宁网站建设方面_网络建设公司前景_网站seo优化服务_windows11优化大师

济宁网站建设方面_网络建设公司前景_网站seo优化服务_windows11优化大师

2025/4/8 1:03:26 来源:https://blog.csdn.net/weixin_43272286/article/details/146607025  浏览:    关键词:济宁网站建设方面_网络建设公司前景_网站seo优化服务_windows11优化大师
济宁网站建设方面_网络建设公司前景_网站seo优化服务_windows11优化大师

在一台服务器上部署两套前后端分离的系统,并使用 IP 地址作为 server_name,可以通过配置 Nginx 来实现。以下是一个详细的步骤指南:

步骤

  1. 准备文件和目录结构

    • 确保每套系统的前端文件和后端服务器已经准备就绪。
    • 假设两套系统的前端文件分别位于 /usr/local/app1/frontend/usr/local/app2/frontend
    • 假设两套系统的后端服务分别运行在 http://127.0.0.1:8081http://127.0.0.1:8082
  2. 安装和配置 Nginx

    • 如果尚未安装 Nginx,可以通过包管理器进行安装,例如在 Ubuntu 上使用 sudo apt install nginx
    • 编辑 Nginx 配置文件,通常位于 /etc/nginx/nginx.conf/etc/nginx/conf.d/ 目录下。
  3. 配置虚拟主机

    • 在 Nginx 配置文件中添加两个 server 块,分别对应两套系统的前端和后端服务,使用不同的 IP 地址作为 server_name

示例配置

以下是一个 Nginx 配置文件的示例,展示了如何在同一台服务器上使用不同的 IP 地址来部署两套前后端分离的系统:

# /etc/nginx/conf.d/app1.conf
server {listen 80;server_name 192.168.1.100;location / {root /usr/local/app1/frontend;index index.html;try_files $uri $uri/ /index.html;}location /api/ {proxy_pass http://127.0.0.1:8081/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}
}# /etc/nginx/conf.d/app2.conf
server {listen 80;server_name 192.168.1.101;location / {root /usr/local/app2/frontend;index index.html;try_files $uri $uri/ /index.html;}location /api/ {proxy_pass http://127.0.0.1:8082/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}
}

详细解释

  1. server { ... }:

    • listen 80;: 监听 80 端口(HTTP 默认端口)。
    • server_name 192.168.1.100;: 指定虚拟主机的 IP 地址为 192.168.1.100。对于第二套系统,使用 server_name 192.168.1.101;
  2. location / { ... }:

    • root /usr/local/app1/frontend;: 设置前端文件的根目录为 /usr/local/app1/frontend。对于第二套系统,使用 /usr/local/app2/frontend
    • index index.html;: 设置默认的索引文件为 index.html
    • try_files $uri $uri/ /index.html;: 尝试提供请求的文件,如果文件不存在,则提供 index.html。这对于单页应用(SPA)非常重要,确保前端路由可以正常工作。
  3. location /api/ { ... }:

    • proxy_pass http://127.0.0.1:8081/;: 将 /api/ 路径的请求代理到本地的 127.0.0.1:8081 端口。对于第二套系统,使用 http://127.0.0.1:8082/
    • proxy_set_header: 设置代理请求的头信息,确保后端服务器能获取到客户端的真实信息。

启动和测试

  1. 启动或重启 Nginx:

    sudo systemctl restart nginx
    
  2. 配置 DNS 或本地 hosts 文件:

    • 如果你有多个 IP 地址并且希望使用域名访问,可以通过配置 DNS 或本地 hosts 文件将域名解析到相应的 IP 地址。
    • 例如,在本地 hosts 文件中添加以下内容:
      192.168.1.100 app1.example.com
      192.168.1.101 app2.example.com
      
  3. 测试配置:

    • 打开浏览器,访问 http://192.168.1.100http://192.168.1.101,确保每套系统的前端和后端都能正常工作。

注意事项

  • IP 地址冲突: 确保每个 IP 地址在服务器上是唯一的,并且配置正确。
  • 端口冲突: 确保每套系统的后端服务运行在不同的端口上,避免冲突。
  • 安全性: 考虑使用 HTTPS 并配置 SSL 证书,提高安全性。
  • 负载均衡: 如果需要更高的可用性和性能,可以考虑使用负载均衡器。

通过以上步骤,你可以在一台服务器上使用不同的 IP 地址来部署两套前后端分离的系统。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com