SSL VirtualHost, не используя DocumentRoot

Я пытаюсь настроить самоподписанный сертификат SSL между своим собственным VPS и Cloudflare (рядом с Полным SSL). Я использую следующий VirtualHosts для этого:

<VirtualHost *:80>
        ServerName domain.com
        Redirect permanent / https://www.domain.com/
</VirtualHost>

<VirtualHost *:443>
        ServerName www.domain.com
        DocumentRoot /var/www/public/www

        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/apache.crt
        SSLCertificateKeyFile /etc/apache2/ssl/apache.key
</VirtualHost>

Но каждый раз, когда я пытаюсь получить доступ к domain.com, это возвращает a 403 Forbidden и я получаю следующую ошибку в своих журналах apache2:

[Fri Jan 30 00:19:23 2015] [error] [client (ip)] Directory index forbidden by Options directive: /var/www/public/

Значение его пытается получить доступ к DocumentRoot по умолчанию, как начато apache2.conf:

ServerAdmin server@domain.com
DocumentRoot /var/www/public

Обратите внимание, что это действительно работает, когда я изменяю порт второго VirtualHost к 80 и комментирую эти 3 строки о SSL.

Таким образом, мой вопрос: почему использованием не является DocumentRoot, который я указал в VirtualHost (*:433)?

Править

Когда я приостанавливаю Cloudflare и перехожу к https://www.domain.com, я могу получить доступ к нему (конечно, с предупреждением, потому что сертификат самоподписывается). Таким образом, возможно, это имеет некоторое отношение к Cloudflare?

1
задан 30 January 2015 в 12:33
1 ответ

Я предполагаю, что вам нужно включить NameVirtualHost для порта SSL.
Это можно сделать, отредактировав файл /etc/apache2/ports.conf.
Здесь вы можете увидеть конфигурацию порта 80:

NameVirtualHost *: 80
Listen 80

Вы также можете увидеть теги IFmodule mod_ssl.c.
По умолчанию внутри тегов должно быть только «Listen 443», и вам просто нужно добавить «NameVirtualHost *: 443» над строкой «Listen 443». Я считаю, что это должно решить вашу проблему.

По-видимому, у меня нет репутации, чтобы публиковать изображения, поэтому готово: http://i.imgur.com/vGCEAGb.png

РЕДАКТИРОВАТЬ: не забудьте перезапустить Apache.

3
ответ дан 3 December 2019 в 18:41

Теги

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