gpt4 book ai didi

apache - 如何为 httpd 服务器的 www 和非 www 域编写 SSL 虚拟主机?

转载 作者:太空宇宙 更新时间:2023-11-03 13:21:47 24 4
gpt4 key购买 nike

我已经为我的 2 个域 www.example.comexample.com 生成了证书

这里是 HTTP 和 HTTPS 协议(protocol)的 .conf 文件:

<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/funapps
RewriteEngine on
RewriteCond %{SERVER_NAME} =example.com [OR]
RewriteCond %{SERVER_NAME} =www.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [NE,R=temp]
</VirtualHost>

在不同的文件中:

<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/funapps
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
RewriteEngine on
RewriteCond %{SERVER_NAME} =example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/www.example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.example.com/privkey.pem
</VirtualHost>
</IfModule>

现在,这发生了:

如果我访问http://example.comhttps://www.example.com , 我被重定向到 https://example.comhttps://www.example.com分别。但如您所见,我只为 www.example.com 提供了证书,浏览器显示非 www 域的安全警告。

所以基本上,我想知道哪个选项更好地处理这 2 个域的 2 个证书?

  1. 在同一个 HTTPS 虚拟主机部分为 SSL 证书文件添加 IF/ELSE 条件(我不知道该怎么做)或
  2. 指定 2 个包含各自证书的不同 HTTPS 虚拟主机?

最佳答案

解决方案 2 是我们如何实现 SSL 虚拟主机。我不知道您如何实现解决方案 1,我认为这是不可能的。

关于apache - 如何为 httpd 服务器的 www 和非 www 域编写 SSL 虚拟主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49346961/

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