CentOS 使用 Nginx 实现 同一台服务器 多域名 对应 多项目

相关文章:

CentOS 1810 安装使用 Nginx

在 CentOS 1804 中手动安装 JDK 1.8

在CentOS 1804 中的 Tomcat 9 设置 SSL( https ) 加密 (多域名加密,阿里云 SSL+ 腾讯云 SSL)

在CentOS 1804 中设置 Apache Tomcat 9.0.12 开机自启


  1. 实现效果:

    域名

    地址

    Tomcat 服务器

    Spring Boot jar 包同理

    wimcom.cn

    http://192.168.138.128:8081/

    Tomcat - 1

    同理,在此不举例了

    www.wimcom.cn

    http://192.168.138.128:8082/

    Tomcat - 2

    同理,在此不举例了

  2. 两个 Tomcat 访问效果如图:
    可以看到 两个 Tomcat 的效果如图:
    CentOS 使用 Nginx 实现 同一台服务器 多域名 对应 多项目
  3. 修改 Nginx 配置文件:
    1. 编辑 Nginx 配置文件:
      vim /usr/local/nginx/conf/nginx.conf
    2. 域名 wimcom.cn配置为:
      1. http配置为:
        server {
            listen       80;
            server_name  wimcom.cn;
        
            rewrite ^(.*)     https://$host$1 permanent;
        
            location / {
        
                proxy_pass      http://localhost:8081;
        
            }
            
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
        
      2. SSL(https)配置为:
        server {
            listen 443 ssl;
            server_name wimcom.cn;
        
            ssl_certificate 1_www.wimcom.cn_bundle.crt;
            ssl_certificate_key 2_www.wimcom.cn.key;
            ssl_session_timeout 5m;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
            ssl_prefer_server_ciphers on;
            location / {
        
                proxy_pass      http://localhost:8081;
        
            }
        }
        
        
    3. 域名 www.wimcom.cn配置为:
      1. http配置为:
        server {
            listen       80;
            server_name  www.wimcom.cn;
        
            rewrite ^(.*)     https://$host$1 permanent;
        
            location / {
        
                proxy_pass      http://localhost:8082;
        
            }
            
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
        
      2. SSL(https)配置为:
        server {
            listen 443 ssl;
            server_name www.wimcom.cn;
        
            ssl_certificate 1_www.wimcom.cn_bundle.crt;
            ssl_certificate_key 2_www.wimcom.cn.key;
            ssl_session_timeout 5m;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
            ssl_prefer_server_ciphers on;
            location / {
        
                proxy_pass      http://localhost:8082;
        
            }
        }
    4. 注意:
      1. 上面两步的区别在与 server_name 与 proxy_pass 不同;
      2. SSL(https)配置不同(这不是废话吗?),域名 wimcom.cn 与 www.wimcom.cn 的 SSL 为相同的 文件,其他解析的 二级与多级域名的 SSL(https)配置文件可能不同。
      3. 如果不需要 SSL(https)可以不配置 SSL(https)。 
    5. 测试:
      /usr/local/nginx/sbin/nginx -t
      显示:
      nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
      nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
      
  4. 访问域名 https://wimcom.cn、https://www.wimcom.cn:
    CentOS 使用 Nginx 实现 同一台服务器 多域名 对应 多项目
     
  5. 注意:
    1. 配置 SSL 可在 tomcat 中配置,也可在 Nginx 中配置,推荐使用 Nginx。
    2. 域名 wimcom.cn 与 www.wimcom.cn 的 SSL 为相同的 文件。
    3. 首先要实现两个 Tomcat 访问效果 才能进行 此教程的配置。