Редирект в .htaccess

N
На сайте с 14.03.2014
Offline
0
440

Здравствуйте. Как сделать автоматический редирект с http://game/user/id.php?id=1 на http://game/user/id1

в файле .htaccess

Если использовать следующий код, то страница http://game/user/id1 доступна, только вот автоматический редирект на неё сделать не получается


RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^id(.*)$ /user/id.php?id=$1 [L,QSA]


---------- Добавлено 14.03.2014 в 23:38 ----------

Проблема решена (спасибо сайбер форуму)

Ответ:

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteCond %{ENV:REDIRECT_END} !^$

RewriteRule .* - [L]

RewriteCond %{QUERY_STRING} (?<=(?<=^|&)id=)\d+(?=&|$)

RewriteRule ^user/id\.php$ user/id%0? [R=301,L]

RewriteRule (?<=^user/id)\d+$ user/id.php?id=$0 [E=END:1,L]

</IfModule>

[umka]
На сайте с 25.05.2008
Offline
456
#1

RewriteCond %{QUERY_STRING} id=(\d+)

RewriteRule ^user/id\.php$ /user/id%1 [R=301,L]

Лог в помощь!
siv1987
На сайте с 02.04.2009
Offline
427
#2

Реврайт + редирект

RewriteEngine On

RewriteCond %{ENV:REDIRECT_STATUS} ^$

RewriteCond %{QUERY_STRING} id=(\d+)

RewriteRule ^user/id\.php$ /user/id%1? [R=301,L]

RewriteRule ^user/id(\d+)$ user/id.php?id=$1 [L,QSA]

njgrmv:
(?<=(?<=^|&)id=)\d+(?=&|$)
njgrmv:
(?<=^user/id)

Шедеврально, утверждать утверждения. Человек явно знает только в извращениях

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий