Перенаправить запрос с помощью .htaccess - PullRequest
0 голосов
/ 06 июля 2010

Мне нужно сделать следующее перенаправление, используя .htaccess

http://example.com => https://example.com/subdirectory
http://www.example.com => https://example.com/subdirectory
https://example.com => https://example.com/subdirectory
https://www.example.com => https://example.com/subdirectory

но я не хочу показывать подкаталог в адресной строке, URL должен быть https://example.com мои файлы сайта находятся в подкаталоге, но мне нужно скрывать его в адресной строке для каждого запроса.

Ответы [ 2 ]

1 голос
/ 06 июля 2010

Попробуйте эти правила:

RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} !=example.com
RewriteRule ^ https://example.com%{REQUEST_URI} [L,R=301]
RewriteRule ^$ subdirectory [L]
0 голосов
/ 06 июля 2010

Как насчет этого (опираясь на ответ Гамбо):

RewriteEngine On

# Redirect direct subdirectory/ request to main domain
RewriteCond %{THE_REQUEST}  ^(POST|GET)\s/subdirectory
RewriteRule ^subdirectory/?(.*)$ https://example.com/$1 [R=301,L]

# Redirect www/non-https to https://example.com
RewriteCond %{HTTPS}       !=on           [OR]
RewriteCond %{HTTP_HOST}   !=example.com
RewriteRule ^.*$ https://example.com/$0 [R=301,L]

# Redirect (internally) to subdirectory/
RewriteCond %{REQUEST_URI} !^/subdirectory/
RewriteRule ^.*$ subdirectory/$0 [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...