RewriteRule работает на http, но ломается на https

0

У меня есть RewriteRule в htaccess, чтобы иметь некоторые красивые URL-адреса для моей целевой страницы. URL-адрес может выглядеть как www.site.com/new-document, и мой RewriteRule сделает это www.site.com/index.php?page=new-document

Таким образом, я могу оставить довольно url и использовать index.php для изменения текста в зависимости от переменной страницы.

Все работает отлично на http, но как только я добавляю https к URL-адресу, я получаю ошибку Not Found, так как в RewriteRule не запускается.

Вот копия моего кода htaccess

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteRule    ^new-document$            index.php?page=new-document
RewriteRule    ^old-document$            index.php?page=old-document

</IfModule>
Теги:
.htaccess
mod-rewrite

2 ответа

1
Лучший ответ

Кузнечик и анубхава указали мне в правильном направлении!

Моя проблема заключалась в том, что на виртуальном хосте https не было директивы AllowOverride All.

<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>
1

Можете ли вы перейти на URL-адрес HTTPS без RewriteRule? Похоже, Apache может использовать другой виртуальный хост или вообще не принимать HTTPS.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню