Использование Mod_rewrite для перенаправления HTTP на HTTPS
Мне нужно перенаправить с http://test-glad/redirect
К https://test-glad/start.do
Основная проблема в том, что мне нужно поддерживать параметры POST в запросе.
Я не могу сделать это с помощью стандартного перенаправления http, поскольку параметры POST не отправляются повторно, как указано в RFC
Я также пытался использовать Proxy Pass, который не будет работать.
Я сейчас пытаюсь сделать это с помощью переписывания Apache URL, но изо всех сил. Вы знаете, возможно ли это? Если так, то некоторая помощь с синтаксисом будет высоко ценится.
Я использую Apache 2.2
Большое спасибо
Том
1 ответ
Вы пытаетесь это на локальном хосте или на живом сервере? Перенаправьте http на https (SSL для всего сайта) попробуйте это в.httaccess
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
или же
RewriteCond %{SERVER_PORT}s ^(443(s)|[0-9]+s)$
RewriteRule ^(.*)$ - [env=askapache:%2]
# redirect urls with index.html to folder
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index.html HTTP/
RewriteRule ^(([^/]+/)*)index.html$ http%{ENV:askapache}://%{HTTP_HOST}/$1 [R=301,L]
# change // to /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)//(.*) HTTP/ [NC]
RewriteRule ^.*$ http%{ENV:askapache}://%{HTTP_HOST}/%1/%2 [R=301,L]