Apache2 - htaccess переписывает Работает на HTTP, но не HTTPS - PullRequest
0 голосов
/ 07 февраля 2020

Я занимаюсь разработкой веб-приложения, доступ к которому осуществляется по адресу app.mywebsite.com. В настоящее время мы используем файл .htaccess для удаления расширения. php из файлов приложения, чтобы получить что-то вроде этого:

http://app.mywebsite.com/dashboard.php 

до

http://app.mywebsite.com/dashboard

Вот мой текущий .htaccess файл

<IfModule mod_rewrite.c>

  Options +FollowSymLinks
  RewriteEngine On
  RewriteBase /

  RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
  RewriteRule ^ %1 [R,L]

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME}.php -f
  RewriteRule ^(.*?)/?$ $1.php [L]

</IfModule>

Проблема в том, что теперь, когда мы установили сертификат SSL, перезаписи не работают (мы получаем 404 ошибки)

Я могу подтвердить трафик HTTPS c разрешен на сервере и отлично работает с нашими веб-файлами * stati c. Вот посмотрите на наш apache config:

<VirtualHost *:80>

    ServerName mywebsite.com
    ServerAlias mywebsite.com
    DocumentRoot /var/www/html
    Redirect / https://www.mywebsite.com

</VirtualHost>

<VirtualHost *:80>

   ServerName app.mywebsite.com
   DocumentRoot /var/www/app
   Redirect / https://app.mywebsite.com/

</VirtualHost>

<VirtualHost *:443>

ServerName app.mywebsite.com
DocumentRoot /var/www/app

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/xxxxxxx.crt
SSLCertificateKeyFile /etc/apache2/ssl/xxxxxxx.key

<Directory /var/www/app>
   Options Indexes FollowSymLinks MultiViews
   AllowOverride All
   Require all granted
</Directory>

</VirtualHost>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...