![apache 上的 https 从哪里获取其配置?](https://linux22.com/image/517808/apache%20%E4%B8%8A%E7%9A%84%20https%20%E4%BB%8E%E5%93%AA%E9%87%8C%E8%8E%B7%E5%8F%96%E5%85%B6%E9%85%8D%E7%BD%AE%EF%BC%9F.png)
因此最初我的主机(mediatemple dv)有两个默认的根目录:
1)httpdocs/ 2)httpsdocs/
在 conf 目录中,我更改了 vhosts.conf 和 httpd.include 以及其他内容,从 httpdocs 更改为自定义文件夹。
现在我安装了一个新的 SSL 证书,https://example.com转到位于 httpsdocs 的默认页面。
我只是想知道 apache 的 ssl 配置存储在哪里。
有想法吗?
答案1
在“正常”安装中,通常有 /etc/httpd/ 包含配置。具体来说,有 /etc/httpd/conf/httpd.conf,它是“主”配置文件,它指定包含 /etc/httpd/conf.d/ 中的所有 .conf 文件。
在我的配置中,我有 /etc/httpd/conf.d/ssl.conf,它完成所有特定于 https 的配置,但管理员可以有很大程度的灵活性来决定。
答案2
SSLCipherSuites
一般来说,你会在(或其他发行版中类似的)中配置不一定特定于给定主机(例如)的 SSL 设置/etc/httpd/conf.d/ssl.conf
,但在其自身中配置特定于给定主机的内容VirtualHost
(具有适当的端口),或多或少如下所示:
<IfModule mod_ssl.c>
<VirtualHost *:443>
# ...
SSLEngine on
SSLCertificateFile /etc/ssl/certs/host.pem
SSLCertificateKeyFile /etc/ssl/private/host.key
DocumentRoot /path/to/https/root
</VirtualHost>
</IfModule>
<VirtualHost *:80>
# ...
DocumentRoot /path/to/plain-http/root
</VirtualHost>
您可以将带有的部分放入其自己的文件中/etc/httpd/conf.d/
或之内ssl.conf
。
这取决于发行版。在 Debian/Ubuntu 上,你可能在 中有常规 SSL 配置,/etc/apache2/mods-available/ssl.conf
在 中有 site/virtualhost 特定配置/etc/apache2/sites-available/some-name.conf
。
答案3
对我来说,解决方案是创建一个虚拟主机 SSL 配置文件指向新文档根目录的文件/var/www/vhosts/example.com/conf/
,然后运行/usr/local/psa/admin/sbin/websrvmng -u --vhost-name=example.com
Plesk。