HTTPS дает 404 не найдена ошибка

Я установил SSL-сертификацию на моем облачном хостинге bitnami google.
сертификат был установлен имущество и даже

Я могу получить доступ к:

https://domain.com

но когда я пытаюсь получить доступ

https://domain.com/xyz 

это дает мне 404 не найдена ошибка

Ниже мой binami.conf файл

<VirtualHost *:443>
  SSLEngine on
  SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"
  SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"

  DocumentRoot "/opt/bitnami/apache2/htdocs/domain/public/"
  <Directory "/opt/bitnami/apache2/htdocs/htdocs/domain/public/">
    Options FollowSymLinks MultiViews
    AddLanguage en en
    LanguagePriority en
    ForceLanguagePriority Prefer Fallback

    AllowOverride All
    <IfVersion < 2.3 >
      Order allow,deny
      Allow from all
    </IfVersion>
    <IfVersion >= 2.3 >
      Require all granted
    </IfVersion>
  </Directory>

  # Error Documents
  ErrorDocument 503 /503.html

  # Bitnami applications installed with a prefix URL (default)
  Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"
</VirtualHost>

Может кто-нибудь, пожалуйста, помогите мне, что пошло не так
Для дополнительной информации
Я использую облачную платформу Google со стеком Bitnami LAMP

4 ответа

В <VirtualHost _default_ *:80>Вы устанавливаете:

DocumentRoot "/opt/bitnami/apache2/htdocs/domainDIR/public/"

Однако в <VirtualHost *:443>Вы устанавливаете:

DocumentRoot "/opt/bitnami/apache2/htdocs/domain/public/"

Где находится ваше веб-приложение? Оба пути должны быть одинаковыми.

Вообще говоря, 404 NOT FOUND может быть подан с 1 из 2 мест в этой ситуации. Сервер Apache может отвечать 404 или запрос, полученный Apache, направляется в приложение, и приложение обслуживает 404,

Если бы приложение обслуживало 404 NOT FOUND Как владелец приложения, можно было бы регистрировать каждый запрос, чтобы увидеть, как это происходит. Поскольку вы вообще не упоминали о приложении, мы должны предположить, что это не источник, и исследовать сервер Apache.

Конфигурации, которые вы предоставили для HTTP (: 80) и HTTPS (: 443), служат статическим ресурсам с <Directory "">, Тем не менее, пути к каталогу и DocumentRoot различаются между HTTP и HTTPS, как упомянуто @Juan.

"/opt/bitnami/apache2/htdocs/domainDIR/public/" знак равно "/opt/bitnami/apache2/htdocs/domain/public/"

Если у вас нет 2 разных каталогов для обслуживания статических ресурсов на основе HTTP(S), то это наиболее вероятная причина 404, Apache не может найти "/opt/bitnami/apache2/htdocs/domain/public/" при обслуживании по HTTPS.

Обратите внимание, что в настоящее время образ Bitnami LAMP в Google Cloud развертывается с использованием Apache 2.4.25 и, следовательно, никогда не должен соответствовать <IfVersion < 2.3> критерии. Это безопасно сохранить, если использовать ту же конфигурацию в другом месте.

Просто думаю, но я думаю, что bitnami.conf должен иметь это только для ssl-части.

# Default SSL Virtual Host configuration.

<IfModule !ssl_module>
  LoadModule ssl_module modules/mod_ssl.so
</IfModule>

Listen 443
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !EDH !RC4"
SSLPassPhraseDialog  builtin
SSLSessionCache "shmcb:/opt/bitnami/apache2/logs/ssl_scache(512000)"
SSLSessionCacheTimeout  300

<VirtualHost _default_:443>
  DocumentRoot "/opt/bitnami/apache2/htdocs"
  SSLEngine on
SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"

  <Directory "/opt/bitnami/apache2/htdocs">
    Options FollowSymLinks MultiViews
    AddLanguage en en
    LanguagePriority en
    ForceLanguagePriority Prefer Fallback

    AllowOverride All
    <IfVersion < 2.3 >
      Order allow,deny                          
      Allow from all
    </IfVersion>
    <IfVersion >= 2.3 >
      Require all granted
    </IfVersion>
  </Directory>

  # Error Documents
  ErrorDocument 503 /503.html

  # Bitnami applications installed with a prefix URL (default)
  Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"
</VirtualHost>

# Bitnami applications that uses virtual host configuration
Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf"

и вы должны поставить свой <VirtualHost *:443> код сверху (вверху) в файл /extras/httpd-ssl.conf.

Затем перезапустите Apache через Putty (или что вы используете)

sudo /opt/bitnami/ctlscript.sh перезапустите apache

Я постараюсь проверить это где-нибудь на этой неделе и отредактировать по мере необходимости ( 8^{D=

@DusanBajic

<VirtualHost _default_ *:80>
  DocumentRoot "/opt/bitnami/apache2/htdocs/domainDIR/public/"
  <Directory "/opt/bitnami/apache2/htdocs/domainDIR/public/">
    Options FollowSymLinks MultiViews
    AddLanguage en en
    LanguagePriority en
    ForceLanguagePriority Prefer Fallback
    AllowOverride All
    <IfVersion < 2.3 >
      Order allow,deny
      Allow from all
    </IfVersion>
    <IfVersion >= 2.3 >
      Require all granted
    </IfVersion>
  </Directory>
  # Error Documents
  ErrorDocument 503 /503.html
  Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"
</VirtualHost>
Другие вопросы по тегам