当前位置:首页 > 技术分享

同服务器 http 定向到https网站 解决办法

admin5个月前 (09-02)技术分享372

当访问https://www.domain1.com时却访问到了www.domain2.com的内容,这是因为您的Nginx配置存在以下问题:


问题原因

缺少HTTPS配置:www.domain1.com的server块只监听了80端口(HTTP),没有监听443端口(HTTPS)

默认SSL服务器:当访问https://www.domain1.com时,Nginx会使用第一个匹配的SSL服务器块,也就是www.domain2.com的配置

解决方案

方案1:为www.domain1.com添加SSL配置

修改www.domain1.com的server块,添加SSL监听和证书配置:

server {
  listen 80;
  listen [::]:80;
  listen 443 ssl;
  listen [::]:443 ssl;
  server_name www.domain1.com;
  
  # 添加SSL证书配置(使用与www.domain1.com相符的证书)
  ssl_certificate /ssl/www.domain1.com/www.domain1.com.pem;
  ssl_certificate_key /ssl/www.domain1.com/www.domain1.com.key;
  ssl_session_timeout 5m;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
  ssl_prefer_server_ciphers on;
  
  # 其余配置保持不变...
}

方案2:添加默认SSL服务器块(推荐)

为了防止其他未配置SSL的域名匹配到错误的服务器块,可以添加一个默认SSL服务器:

server {
  listen 443 ssl default_server;
  listen [::]:443 ssl default_server;
  ssl_certificate /ssl/www.domain2.com/www.domain2.com.pem;
  ssl_certificate_key /ssl/www.domain2.com/www.domain2.com.key;
  return 444; # 关闭连接或重定向到其他页面
}

验证步骤

修改配置后,测试Nginx配置:

Bash

   nginx -t

重新加载Nginx配置:

Bash

   systemctl reload nginx

测试访问:

https://www.domain1.com 现在应该显示正确的内容

如果访问其他未配置的HTTPS域名,应该会被拒绝或重定向

注意事项

确保/ssl/www.domain2.com/www.domain2.com.pem是一个有效的证书,能够匹配www.domain2.com

如果www.domain1.com需要独立的证书,应该为其配置专用证书

考虑为HTTP访问添加自动跳转HTTPS的配置(如果需要)

通过以上修改,您的HTTPS访问应该能够正确路由到对应的网站内容。


扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:https://blog.bitefu.net/post/691.html

标签: nginx
分享给朋友:

“同服务器 http 定向到https网站 解决办法” 的相关文章

IIS动态IP限制抵御CC攻击和网络爬虫IIS 8 IIS 7 Dynamic IP Address Restrictions

IIS动态IP限制抵御CC攻击和网络爬虫IIS 8 IIS 7 Dynamic IP Address Restrictions

IIS8新增了一个动态IP限制功能,可以限制同一IP的连接数和访问频率。IIS7则可以安装官方模块Dynamic IP Restrictions实现相同功能。IIS8启用方法默认情况下,IIS 8.0是没有安装“IP和域限制”模块的,我们需…

centos 配置Let's Encrypt 泛域名https证书

centos 配置Let's Encrypt 泛域名https证书

前言2018年1月份Letsencrypt可以申请泛域名证书,这让我们部署多域名、多站点https省了很多功夫,终于可以不用维护多个域名的https证书。笔者以acme.sh为例,手把手教你配置https证书~本教程适用于centos 6.…

安装Windows 10X 教你如何安装Win10X正式版 及下载地址

安装Windows 10X 教你如何安装Win10X正式版 及下载地址

安装Windows 10X 教你如何安装Win10X正式版:Windows 10X是Windows 10操作系统的新版本,主要针对双屏电脑。由于即将运行Windows 10X的双屏电脑(例如即将面世的Surface Neo)的开发遇到挫折,…

PHP AES加解密 (ECB模式/sha1prng算法/PKCS5Padding和PKCS7Padding补码) ECB 模式不需求设置 iv

php7+ 版本/**  * [AesSecurity aes加密,支持PHP7+]  * 算法模式:ECB  * 密钥长度:128  * 补…

遭遇国外ip抓取或攻击怎么办一招解决禁止海外IP访问

遭遇国外ip抓取或攻击怎么办一招解决禁止海外IP访问

究发现很多网站被攻击都是来自海外的肉鸡,所以禁掉海外IP访问网站也是不错的防护手段,而且国内网站几乎很少有国外用户访问,称之为大局域网也不为过。今天主机吧来教大家如何利用域名解析禁止掉海外IP访问网站。绝大多数域名解析服务商都是提供电信联通…

Nginx服务崩溃自动重启脚本(监控进程服务并自动重启进程服务)脚本

有一台服务器运行着Ngin最近突然有一次崩溃,导致使用方当天无法访问网页端,然后我不得不登录服务器,检查各项服务,发现nginx崩溃了,于是重启Nginx,问题解决。后来为了防止Nginx再发生这种情况给运维带来的运维成本,于是写了一个脚本…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。