2010-07-06 2 views
0

мне нужно сделать следующее редирект с помощью .htaccessзапрос Перенаправление с помощью .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. Мои файлы сайта живут в подкаталоге, но я необходимо скрыть его в строке адреса для каждого запроса.

ответ

1

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

RewriteCond %{HTTPS} !=on [OR] 
RewriteCond %{HTTP_HOST} !=example.com 
RewriteRule^https://example.com%{REQUEST_URI} [L,R=301] 
RewriteRule ^$ subdirectory [L] 
+0

но показать имя поддиректории в адресной строке и https://example.com Безразлично» t перенаправить на https://example.com/subdirectory –

0

Как об этом (здание на ответ илистый в):

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] 
Смежные вопросы