Htaccess и mod_rewrite

B
На сайте с 15.12.2006
Offline
109
478

Ситуация такая:

на сайте было около 7000 страниц вида

site.ru/ab/news/index.php?action=show&nid=1

site.ru/ab/news/index.php?action=show&nid=2

......

site.ru/ab/news/index.php?action=show&nid=7000

Сейчас эти страницы расположены в другой папке и имеют вид

site.ru/111/1.htm

site.ru/111/2.htm

site.ru/111/3.htm

....

site.ru/111/7000.htm

Как с помощью htaccess и mod_rewrite прописать, чтобы эти страницы были доступны по старым адресам. Так, чтобы они не выпали из индекса.

Superior
На сайте с 20.02.2008
Offline
120
#1

Может быть, так:


RewriteEngine on
RewriteBase /
RewriteRule ^/ab/news/index.php?action=show&nid=([0-9]{1,4})/$ /111/$1.htm
B
На сайте с 15.12.2006
Offline
109
#2

не работает почему-то

Skom
На сайте с 02.12.2006
Offline
165
#3
Superior:


RewriteRule ^/ab/news/index.php?action=show&nid=([0-9]{1,4})/$ /111/$1.htm

Слэш тут не помешает.

RewriteRule ^/ab/news/index\.php?action=show&nid=([0-9]{1,4})/$ /111/$1.htm

benderr:
не работает почему-то

А Апач имеет место быть? :D

Cras amet qui numquam amavit quique amavit cras amet
B
На сайте с 15.12.2006
Offline
109
#4
Skom:
Слэш тут не помешает.
RewriteRule ^/ab/news/index\.php?action=show&nid=([0-9]{1,4})/$ /111/$1.htm

А Апач имеет место быть? :D

Апач, конечно, есть.

Но эта конструкция не работает.

Polimer
На сайте с 01.09.2006
Offline
84
#5

Сейчас нет возможноти проверить, но как-то так:

RewriteEngine  on

RewriteBase /
RewriteCond %{REQUEST_URI} ^/ab/news/index\.php$
RewriteCond %{QUERY_STRING} ^action=show&nid=([0-9]{1,4})$
RewriteRule .* /111/%1.htm
Программные решения для бизнеса. (http://frontsoft.ru/) На заказ. Дорого.

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