gpt4 book ai didi

ubuntu - 使用 https 连接重定向非 www http 请求 www 域

转载 作者:太空宇宙 更新时间:2023-11-03 14:14:09 25 4
gpt4 key购买 nike

我想重定向http://domain.comhttps://www.domain.com .我成功重定向 httphttps像这样(在 default-ssl.conf 文件中):

<VirtualHost domain.com:80>
RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</VirtualHost>

<VirtualHost _default_:443>
RewriteEngine on
ServerAdmin webmaster@localhost
ServerName domain.com:443
ServerAlias www.domain.com
DocumentRoot /var/www/html
</VirtualHost>

但是当我输入没有 www 的域时,我收到错误消息 This site is untrusted, the certificate is only valid to <www.domain.com>

我在网上尝试了很多建议的解决方案,但都没有用。我的环境:

  • Ubuntu 14.04
  • Apache2
  • 为 <"www.domain.com">(通用名称)颁发的 SSL

最佳答案

更改 http (锅 80)配置:

<VirtualHost domain.com:80>
RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</VirtualHost>

对此将对 https 进行联合检查和 www :

<VirtualHost domain.com:80>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)(.+) [OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)
RewriteRule ^ https://%2%{REQUEST_URI} [R=301,L]
</VirtualHost>

也就是说,您仍然可能得到 This site is untrusted, the certificate is only valid to <www.domain.com>因为初始连接将连接到不正确的证书主机名。因此,最好对两种配置都执行此操作— httphttps ——这样调整:

<VirtualHost domain.com:80>
RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</VirtualHost>

<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
ServerName domain.com:443
ServerAlias www.domain.com
DocumentRoot /var/www/html
RewriteEngine on
RewriteCond %{HTTP_HOST} !^(www\.)?(.+)
RewriteRule ^ https://%2%{REQUEST_URI} [R=301,L]
</VirtualHost>

想法是关于 http连接您只需重定向到 https .然后上https连接,你检查是否www进行相应设置和调整。

关于ubuntu - 使用 https 连接重定向非 www http 请求 www 域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24108834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com