SSL на apache; запрошенный URL не найден

Я настраиваю SSL на своем сервере Apache / 2.4.6 RHEL. В httpd.conf установите VirtualHosts, как показано ниже ...

<VirtualHost *:80>
    ServerName foo.bar
    Redirect permanent / https://foo.bar
</VirtualHost>


<VirtualHost *:443>
    DocumentRoot /path/to/file

    ServerName foo.bar

    SSLEngine on
    SSLCertificateFile /path/to/file
    SSLCertificateKeyFile /path/to/file
    SSLCertificateChainFile /path/to/file

</VirtualHost>

Когда я закомментирую DocumentRoot в httpd.conf вне VirtualHosts, веб-браузер возвращает ошибку 404 Запрошенный URL / был не найден на этом сервере.

Нужен ли мне DocumentRoot вне VirtualHost *: 443 ? Если нет, то что происходит, когда я это комментирую?

0
задан 20 January 2016 в 08:36
2 ответа

Оказывается, я неправильно настроил ssl.conf отдельно. Исправлен ssl.conf и удален VirtualHost для 443 из httpd.conf, и это прекрасно работает!

0
ответ дан 5 December 2019 в 10:49

В некоторой конфигурации apache будет определен DocumentRoot, который, вероятно, недоступен для сервера, вы можете проверить это, выполнив для вариантов RHEL:

 /usr/sbin/httpd -S

и Debian

/usr/sbin/apache2ctl -S 

. содержать переменную:

Main DocumentRoot: "/var/www/html"

Вы можете либо настроить ее, либо установить ее в разделе виртуального хоста (я бы предпочел, чтобы эта переменная была такой же, как у SSL vhost).

0
ответ дан 5 December 2019 в 10:49

Теги

Похожие вопросы