HTTP перенаправляется в основной домен, но не HTTPS

Я пытаюсь настроить поддомен на моей машине Ubuntu 17.10. Я получил часть HTTPS, которая показывает правильные файлы поддоменов, но когда я помещаю ее как HTTP, она показывает основной домен, но я хочу, чтобы HTTP перенаправлял и показывал версию субдомена HTTPS.

sites-available file:

<VirtualHost *:80> ServerName forum.domain.com RewriteEngine on RewriteCond %{SERVER_NAME} =forum.domain.com RewriteRule ^ https://forum.domain.com%{REQUEST_URI} [END,NE,R=permanent] </VirtualHost> <IfModule mod_ssl.c> <VirtualHost *:443> ServerName forum.domain.com DocumentRoot /var/www/forum/html <Directory /var/www/forum/html> AllowOverride All </Directory> </VirtualHost> </IfModule>

По какой-то причине версия HTTP просто показывает версию порта 80 на веб-сайте. Я использую Let's Encrypt для HTTPS SSL-шифрования веб-сайта (потому что это бесплатно), и я просмотрел другие файлы conf, чтобы не видеть никаких других ошибок сам

/ etc / hosts file: [ ! d3] 127.0.0.1 localhost --.--.--.-- vps141---.vps.ovh.ca vps141--- 127.0.1.1 vps141---.vps.ovh.ca vps141--- --.--.--.-- forum.domain.com

Мне пришлось вынимать некоторые цифры, чтобы я не показывал свою информацию всем, кто жалел: (

2
задан 2 January 2018 в 03:28

2 ответа

Это не правильный Vhost для SSL.

Вы должны фактически включить SSL на VHost (SSLEngine on), указать сертификат и т. д. Вот разумная отправная точка.

<VirtualHost *:443> DocumentRoot /var/www/forum/html/ ErrorLog "logs/error_log" CustomLog "logs/access_log" common ServerName forum.domain.com ServerAlias www.forum.domain.com SSLEngine on SSLProtocol all -SSLv3 -SSLv2 SSLCipherSuite HIGH:!aNULL SSLCertificateFile /etc/letsencrypt/live/forum.domain.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/forum.domain.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/forum.domain.com/chain.pem CustomLog /var/log/apache2/ssllog %t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost>

Чтобы добиться перенаправления, вы можете использовать следующее для своего обычного vhost:

<VirtualHost *:80> ServerName forum.domain.com Redirect permanent / https://forum.domain.com/ </VirtualHost>
3
ответ дан 18 July 2018 в 00:04

Это не правильный Vhost для SSL.

Вы должны фактически включить SSL на VHost (SSLEngine on), указать сертификат и т. д. Вот разумная отправная точка.

<VirtualHost *:443> DocumentRoot /var/www/forum/html/ ErrorLog "logs/error_log" CustomLog "logs/access_log" common ServerName forum.domain.com ServerAlias www.forum.domain.com SSLEngine on SSLProtocol all -SSLv3 -SSLv2 SSLCipherSuite HIGH:!aNULL SSLCertificateFile /etc/letsencrypt/live/forum.domain.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/forum.domain.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/forum.domain.com/chain.pem CustomLog /var/log/apache2/ssllog %t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost>

Чтобы добиться перенаправления, вы можете использовать следующее для своего обычного vhost:

<VirtualHost *:80> ServerName forum.domain.com Redirect permanent / https://forum.domain.com/ </VirtualHost>
3
ответ дан 24 July 2018 в 17:09

Другие вопросы по тегам:

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