.htaccess перенаправить только корень подпапки в другую подпапку? - PullRequest
1 голос
/ 02 ноября 2019

У меня есть сайт в "example.com/a", и я хотел бы перенаправить 301 просто URL "example.com/a" на "example.com/b" и другие данные в "example.com/a" неизмените адрес.

создайте .htaccess в "example.com/a" и попробуйте использовать несколько кодов, таких как:

RewriteEngine on
RewriteRule ^$ http://www.example.com/b [R=301,L]

и

RedirectMatch 301 ^/$ https://example.com/b

и его корень перенаправленияно все остальные данные в "example.com/a" показывают ошибку 404.

У меня много фотографий в "root / a", просто хочу перенаправить адрес "root / a" в "root /b "и адрес фотографий остается прежним.

Например, адрес" root / a / pic.jpg "останется неизменным до и после перенаправления,

Как я могупросто перенаправить "example.com/a", а другой старый адрес не изменить?

1 Ответ

1 голос
/ 02 ноября 2019

Если я вас правильно понял, вам нужно перенаправить root/a на root/b, сохраняя при этом местоположение остальных страниц, файлов?

Это будет:

# Redirect Root Only
<IfModule mod_rewrite.c>
RewriteEngine On

#Uncheck line below to redirect 'index.php' as well
#Redirect 301 /a/index.php http://example.com/b/

#Redirect root only
RewriteCond %{HTTP_HOST} example\.com [NC]
RewriteCond %{REQUEST_URI} ^/a/$
Rewriterule ^(.*)$ http://example.com/b/ [L,R=301]
</IfModule>

# END Redirect Root Only

Вам нужно перенаправить index.php, index.html или другие страницы индекса тоже? Снимите флажок с строки в коде выше. Поскольку %{REQUEST_URI} ^/a/$ исключает все прямые пути к файлам, включая / a / index.html, index.php, index.py и т. Д.

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