Apache: URL-адреса с HTTPS не найдены - PullRequest
0 голосов
/ 17 января 2019

Каждый запрос на моем сайте перенаправляется в определенный файл PHP (handle.php). Это прекрасно работает для HTTP-запросов, но не тогда, когда я ввожу HTTPS в URL.

Это работает (HTTP): http://my.domain.com/myrequest

Это работает (HTTPS): https://my.domain.com/handle.php (каждый запрос к определенному файлу отлично работает в HTTPS)

Это не работает (HTTPS): https://my.domain.com/myrequest (404 не найдено)

Короче говоря, возникает проблема, когда я запускаю HTTPS и пытаюсь сделать запрос, который необходимо перенаправить на handle.php.

Сначала я подумал, что HTTPS-запросы не были разрешены, но, как вы можете видеть, когда вы запрашиваете определенный файл, он работает нормально, поэтому я думаю, что есть проблема с редиректом.

.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^ handle.php [L]
</IfModule>

VirtualHost Config

NameVirtualHost *:80
<VirtualHost *:80>
        ServerAdmin admin
        ServerName my.domain.com
        ServerAlias my.domain.com
        DocumentRoot /data/www/my.domain.com/docroot/
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /data/www/my.domain.com/docroot/>
                Options FollowSymLinks MultiViews
                AllowOverride All
                Require all granted
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options ExecCGI MultiViews SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
        ErrorLog /data/www/my.domain.com/logs/error.log
        LogLevel warn
        CustomLog /data/www/my.domain.com/logs/access.log combined
        ServerSignature On
</VirtualHost>
NameVirtualHost *:443
<VirtualHost *:443>
        ServerName my.domain.com
        DocumentRoot /data/www/my.domain.com/docroot/
        SSLEngine on
        CustomLog /data/www/my.domain.com/logs/ssl-access.log combined
        ErrorLog /data/www/my.domain.com/logs/ssl-error.log
        SSLCertificateFile /data/www/my.domain.com/certs/cert.crt
        SSLCertificateKeyFile /data/www/my.domain.com/certs/cert.key
        <Directory /data/www/my.domain.com/docroot/>
                Require all granted
                Options FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>
...