Перенаправление HTTPS на HTTP через .htaccess - PullRequest
0 голосов
/ 15 сентября 2010

Я использую WordPress с его именем по умолчанию .htaccess, и мне нужно перенаправить все URL, начиная с https: //, на http: //.Мой сервер использует ту же папку для протоколов http и https ... это мой текущий .htaccess:

# BEGIN WordPress <IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase 
RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L] </IfModule> 
# END WordPress

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]

Он отлично работает для https://www.domain.com/ (перенаправляет на http://www.domain.com/) но он не работает с https://www.domain.com/subpages/ (он также перенаправляет на http://www.domain.com/).

Видите ли вы какие-либо проблемы в .htaccess, пожалуйста?

Спасибо

1 Ответ

4 голосов
/ 15 сентября 2010

Изменить порядок правил:

Options +FollowSymlinks

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{SERVER_PORT} ^443$
    RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]

    # BEGIN WordPress
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    # END WordPress
</IfModule>

В противном случае правило WordPress будет перехватывать все запросы, URL-адрес которых не пуст (т.е. не просто /).

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