Назад | Перейти на главную страницу

Lightsail LAMP - виртуальные хосты перестали работать после добавления SSL

После долгих часов исследований я публикую это. Я пытаюсь добавить домен и его поддомен на один статический IP-адрес, созданный в экземпляре LAMP в Amazon Lightsail, и добавить SSL-сертификат Let's Encrypt к обоим. До добавления SSL мои виртуальные хосты работали нормально. Файлы из правильного каталога обслуживались, как определено в httpd-vhosts.conf. Но после запуска битнами bncert-tool чтобы добавить перенаправления SSL, https и www, все пошло наперекосяк.

Подробное объяснение проблемы:

  1. Создал статический IP-адрес и привязал его к моему экземпляру LAMP.
  2. Создал записи для @.example.com, www.example.com, app1.example.com, и www.app1.example.com. Все разрешается на один статический IP, созданный ранее.
  3. Вытащил репозиторий в отдельные каталоги в htdocs (/opt/bitnami/apache2/htdocs). /opt/bitnami/apache2/htdocs/main для example.com и /opt/bitnami/apache2/htdocs/app1 для app1.example.com.
  4. Поместите ниже содержание в /opt/bitnami/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
    DocumentRoot "htdocs/main"
    ServerName realtypillar.com
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "htdocs/proutil"
    ServerName pro-util.realtypillar.com
</VirtualHost>
  1. Добавлен оператор 'Включить "/opt/bitnami/apache2/conf/extra/httpd-vhosts.conf" "в" /opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf ". (Мне удалось получить доступ http://example.com и http://app1.example.com отображение htdocs/main и `htdocs / app11 соответственно)
  2. Я побежал sudo /opt/bitnami/bncert-tool. Поступил example.com app1.example.com в подсказке со списком доменов. Включена опция http в https, включена опция без www в www и отключена опция www в non-www при появлении запроса. Успешно запустить процесс без предупреждения или сообщения об ошибке.
  3. Теперь, когда я захожу на example.com через браузер, он перенаправляется на https://www.example.com (что правильно), но показывает мне index.html из htdocs вместо того htdocs/main как указано в конфигурации vhost. И когда я захожу на app1.example.com, он не перенаправляет на https и не добавляет префикс www в url. Но он загружает файлы из правильного каталога, т.е. htdocs/app1.

---РЕДАКТИРОВАТЬ---

Ниже приведены мои файлы httpd conf для справки:

Было бы здорово, если бы кто-нибудь указал мне, в чем я ошибаюсь?

Bitnami Engineer здесь,

Инструмент настройки Bitnami HTTPS обновляет только SSL-конфигурацию основного виртуального хоста (тот, который находится внутри файла /opt/bitnami/apache2/conf/bitnami/bitnami.conf), поэтому, если у вас есть собственные виртуальные хосты, вам нужно будет изменить их вручную, используя сертификаты SSL, созданные инструментом. В вашем случае вам нужно будет использовать эту конфигурацию в созданном вами файле httpd-vhosts.conf.

<VirtualHost *:80>
    DocumentRoot "/opt/bitnami/apache2/htdocs/main"
    ServerName realtypillar.com
    ServerAlias realtypillar.com www.realtypillar.com
    # BEGIN: Enable HTTP to HTTPS redirection
    RewriteEngine On
    RewriteRule ^/(.*) https://realtypillar.com/$1 [R,L]
    # END: Enable HTTP to HTTPS redirection
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/opt/bitnami/apache2/htdocs/proutil"
    ServerName pro-util.realtypillar.com
    ServerAlias pro-util.realtypillar.com www.pro-util.realtypillar.com
    # BEGIN: Enable HTTP to HTTPS redirection
    RewriteEngine On
    RewriteRule ^/(.*) https://pro-util.realtypillar.com/$1 [R,L]
    # END: Enable HTTP to HTTPS redirection
</VirtualHost>

<VirtualHost _default_:443>
    DocumentRoot "/opt/bitnami/apache2/htdocs/main"
    ServerName realtypillar.com
    ServerAlias realtypillar.com www.realtypillar.com
        # BEGIN: Enable www to non-www redirection
        RewriteEngine On
        RewriteCond %{HTTP_HOST} !^realtypillar.com$
        RewriteRule ^(.*)$ https://realtypillar.com$1 [R=permanent,L]
        # END: Enable www to non-www redirection
    <Directory "/opt/bitnami/apache2/htdocs/main">
        Options -Indexes +FollowSymLinks -MultiViews
        AllowOverride All
    </Directory>
    SSLEngine on
    SSLCertificateFile "/opt/bitnami/apache2/conf/realtypillar.com.crt"
    SSLCertificateKeyFile "/opt/bitnami/apache2/conf/realtypillar.com.key"
</VirtualHost>

<VirtualHost _default_:443>
    DocumentRoot "/opt/bitnami/apache2/htdocs/proutil"
    ServerName pro-util.realtypillar.com
    ServerAlias pro-util.realtypillar.com www.pro-util.realtypillar.com
        # BEGIN: Enable www to non-www redirection
        RewriteEngine On
        RewriteCond %{HTTP_HOST} !^pro-util.realtypillar.com$
        RewriteRule ^(.*)$ https://pro-util.realtypillar.com$1 [R=permanent,L]
        # END: Enable www to non-www redirection
    <Directory "/opt/bitnami/apache2/htdocs/proutil">
        Options -Indexes +FollowSymLinks -MultiViews
        AllowOverride All
    </Directory>
    SSLEngine on
    SSLCertificateFile "/opt/bitnami/apache2/conf/realtypillar.com.crt"
    SSLCertificateKeyFile "/opt/bitnami/apache2/conf/realtypillar.com.key"
</VirtualHost>

Для протокола, мы говорили обо всех этих изменениях в эта ветка форума сообщества Bitnami.