Назад | Перейти на главную страницу

Перенаправление всех страниц, кроме некоторых, обратно на HTTP

Я использую правила перезаписи ниже, чтобы перенаправить 2 страницы php на https (для защиты данных пользователя), но всякий раз, когда я нажимаю на какие-либо ссылки на этих страницах php, они перенаправляют с включенным https, и страница отображается неправильно.

Правила внизу были предназначены для перенаправления любых других страниц обратно на http, но они не работают. Любые советы будут высоко ценится!

    RewriteEngine on
    RewriteCond %{HTTPS} off
    RewriteCond %{REQUEST_URI} ^/securepage1.php$ [NC]
    RewriteRule ^(.*)$ https://www.example.com$1 [L,R=301]

    RewriteCond %{HTTPS} off
    RewriteCond %{REQUEST_URI} ^/securepage2.php$ [NC]
    RewriteRule ^(.*)$ https://www.example.com$1 [L,R=301]

    RewriteCond %{HTTPS} on
    RewriteCond %{REQUEST_URI} !^/securepage1.php$ [NC]
    RewriteCond %{REQUEST_URI} !^/securepage2.php$ [NC]
    RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301]

Попробуйте включить протоколирование чтобы получить четкое представление о том, какие шаги терпят неудачу:

RewriteLog /path/to/log
RewriteLogLevel 2

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

Теперь несколько мыслей о безопасности. Если вы достаточно беспокоитесь о защите данных на определенных страницах (но не на других), тогда лучший вопрос, который стоит задать: стоит ли делать только 2 страницы на вашем сайте заслуживающими доверия? Если я перейду к http://example.com и быть перехваченным в атаке "Человек посередине" (MIM), действительно ли вашему пользователю важно, https://example.com/securepage1.php безопасен, когда атака MIM заставляет меня http://badpage.com/securepage1.php? Другими словами, если это часть интерактивного сайта, защита двух защищенных страниц ничего не дает, потому что пользователь не может доверять сайту с самого начала.