Как удалить часть URL с помощью .htaccess - PullRequest
2 голосов
/ 16 июля 2009

У меня есть такой URL.

/domains/details.php (ПРИМЕЧАНИЕ: domains является динамическим и может быть любым)

Как удалить часть domains из URL с помощью .htaccess, чтобы фактический поиск был таким:

/details.php

ИЛИ будет круто, если я смогу ввести domains в URL. /details.php?page=domains

Спасибо! Скотт

Ответы [ 2 ]

5 голосов
/ 16 июля 2009
RewriteEngine on
RewriteBase /

RewriteRule ^([^/]+)/details.php$ /details.php?page=$1 [R=301]

Оставьте [R=301], если вы хотите внутреннее перенаправление, а не реальное перенаправление HTTP.

Чтобы сохранить существующие параметры запроса, вы можете изменить правило так:

RewriteRule ^([^/]+)/details.php(.*)$ /details.php?page=$1&%{QUERY_STRING} [R=301]
1 голос
/ 17 июля 2009

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

RewriteRule ^(?!domains/.*)([^/]+)/details.php$ domains/details.php?page=$1 [R=301,QSA]
RewriteRule ^domains/details.php$ details.php [NC,L]
...