问答

nginx挂载不同服务在443/80端口,但 server_name 没有起效?

作者:admin 2021-05-07 我要评论

我的一个nginx服务器上面同时部署了 a.aa.cc 和 b.bb.co 两个服务(各自都监听了 80 端口和 443 端口) 使用的是指定的 server_name (完全匹配模式) 也设置了f...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

我的一个nginx服务器上面同时部署了 a.aa.cc 和 b.bb.co 两个服务(各自都监听了 80 端口和 443 端口)
使用的是指定的 server_name (完全匹配模式)

也设置了fastcgi_param SERVER_NAME $host;
但是如果使用 openssl s_client -connect a.aa.cc:443 | openssl x509 -pubkey -noout
会获取得 b.bb.co 的公钥证书。

配置如下:

upstream web_server {
  server 127.0.0.1:5001;
  keepalive 65;
}

upstream web_server2 {
  server 127.0.0.1:5002;
  keepalive 65;
}


server {
  listen        80;
  server_name   a.aa.cc;
  rewrite ^(.*) https://$server_name$1 permanent;
}

server {
  listen      443;
  server_name a.aa.cc;
  access_log  /var/log/nginx/a.aa.cc.access.log;
  error_log   /var/log/nginx/a.aa.cc.error.log;

  ssl on;
  ssl_certificate     /etc/nginx/certs/a.aa.cc/ssl.pem;
  ssl_certificate_key /etc/nginx/certs/a.aa.cc/ssl.key;

  location / {
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   Host  $http_host;
    proxy_set_header   X-Nginx-Proxy true;
    proxy_set_header   Connection "";
    proxy_http_version 1.1;
    proxy_pass         http://web_server;
  }
}

server {
  listen        80;
  server_name   b.bb.co;
  rewrite ^(.*) https://$server_name$1 permanent;
}

server {
  listen      443;
  server_name b.bb.co;
  access_log  /var/log/nginx/b.bb.co.access.log;
  error_log   /var/log/nginx/b.bb.co.error.log;

  ssl on;
  ssl_certificate     /etc/nginx/certs/b.bb.co/ssl.pem;
  ssl_certificate_key /etc/nginx/certs/b.bb.co/ssl.key;

  location / {
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   Host  $http_host;
    proxy_set_header   X-Nginx-Proxy true;
    proxy_set_header   Connection "";
    proxy_http_version 1.1;
    proxy_pass         http://web_server2;
  }
}
###

你修改配置后重新加载配置让配置生效没有?
你配置的密钥文件检查是正确的?没有出现误放可能?

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • nginx挂载不同服务在443/80端口,但 se

    nginx挂载不同服务在443/80端口,但 se

  • 如图所示,myeclipse10中的svn经常显示

    如图所示,myeclipse10中的svn经常显示

  • php 苹果内购验证凭证请求返回很慢

    php 苹果内购验证凭证请求返回很慢

  • 谷歌web font是否有办法下载到本地并打

    谷歌web font是否有办法下载到本地并打

腾讯云代理商
海外云服务器