Конфигурация Apache для Slim3 с SSL - PullRequest
0 голосов
/ 02 декабря 2018

Я пытаюсь настроить файл конфигурации apache с помощью приложения slim framework для использования ssl.Я делал это в прошлом, но по какой-то причине я получаю 404 ошибки, когда пытаюсь получить доступ к любой странице, кроме домашней.Вот мой файл конфигурации apache:

<VirtualHost *:80>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
    RewriteCond %{SERVER_NAME} =www.my-site.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

    ServerAdmin my.email@gmail.com
    ServerName www.my-site.com
</VirtualHost>

<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /path/to/cert.pem
    SSLCertificateKeyFile /path/to/privkey.pem

    ServerAdmin my.email@gmail.com
    DocumentRoot /wwwroot/sites/my-site/public
    ServerName www.my-site.com
    ErrorLog logs/www.my-site.com-error_log
    CustomLog logs/www.my-site.com-access_log common

    <Directory "/wwwroot/sites/my-site/public">
        AllowOverride All

        RewriteEngine On
        RewriteBase /wwwroot/sites/my-site/public
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^ index.php [QSA,L]
    </Directory>
</VirtualHost>

Как уже говорилось, моя домашняя страница работает точно так, как я ожидаю, что она будет работать.Но когда я пытаюсь перейти на https://www.my -site.com / another / page , я получаю сообщение об ошибке 404.

У меня есть dev-версия этого проекта, настроенная на другом серверекоторый не использует https, и у меня нет проблем при переходе на http://dev.my -site.com / another / page .

1 Ответ

0 голосов
/ 07 декабря 2018

попробуйте установить RewriteBase в /

<Directory "/wwwroot/sites/my-site/public">
    AllowOverride All

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [QSA,L]
</Directory>
...