Centos

用於 SSL 的 Apache 2.4.6 VirtualHost DocumentRoot 配置被忽略

  • February 14, 2017

Apache 忽略了我的 VirtualHost 配置中的 DocumentRoot 設置。

該站點通過埠 80上的http載入正確的 DocumentRoot,但是當通過埠 443 上的****https訪問時,它會載入 apache 的預設 DocumentRoot,/var/www/html而不是var/www/mysite.

SSL 證書確實載入正確,它只是被忽略的 DocumentRoot。

我在 CentOS 上執行 Apache/2.4.6。

配置如下:

# /etc/httpd/vhost.d/mysite.mylabserver.com_httpd.conf

<VirtualHost *:80>
       ServerName mysite.labserver.com
       ServerAlias mysite

       DocumentRoot /var/www/mysite
</VirtualHost>

<VirtualHost *:443>
       ServerName mysite.mylabserver.com
       ServerAlias mysite

       DocumentRoot /var/www/mysite

       SSLEngine on
       SSLCertificateFile /etc/httpd/ssl-certs/apache.crt
       SSLCertificateKeyFile /etc/httpd/ssl-certs/apache.key
</VirtualHost>

有一個配置文件

/etc/httpd/conf.d 稱為 ssl.conf (或類似的東西)

保持預設的 ssl 配置。

那麼你有三個選擇…

  1. 編輯該文件
  2. 刪除該文件(不推薦)
  3. 使用命名的虛擬主機。

請記住將 Listen 443 複製到您的文件中。

讓我知道這是否有幫助

引用自:https://unix.stackexchange.com/questions/340968