Как правильно составить htaccess Чпу.

seosniks
На сайте с 13.08.2007
Offline
389
1076

Добрый день товарищи.

Как мне правильно составить htaccess чтоб небыло конфльктов.

index.php?k=$1 категория с новостями

index.php?s=full&id=$1 полная новость full&id=$1

index.php?s=full&cpu=$1&k=$1 полная новость в категории k=$1

RewriteRule ^cat/(.*).html(/?)+$   index.php?k=$1

RewriteRule ^[0-9a-zA-Z]$ index.php?s=full&id=$1&k=$1
RewriteRule ^(.*).html(/?)+$ index.php?s=full&cpu=$1&k=$1

Если работает категория то не работает полня новость.

Если работает полная то не пашут категории

Как правильно сделать ?

Спасибо.

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#1

Не могу понять: ЧПУ еще не реализовано и надо придумать формат ЧПУ+правильный htaccess, или же уже есть ЧПУ, но htaccess парит моск?

Если ЧПУ уже есть, то правила мягко говоря странные(2 правило ваще отжег;))

И чем отличаются "полная новость" и "полная новость в категории"?

Подпись))
дани мапов
На сайте с 06.09.2012
Offline
204
#2

Попробуйте так


RewriteRule ^cat/(.*).html(/?)+$ index.php?k=$1
RewriteRule ^[0-9a-zA-Z]$ index.php?s=full&id=$1&k=$1
RewriteRule ^([^/]+).html(/?)+$ index.php?s=full&cpu=$1&k=$1
Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
seosniks
На сайте с 13.08.2007
Offline
389
#3
Милованов Ю.С:
Не могу понять: ЧПУ еще не реализовано и надо придумать формат ЧПУ+правильный htaccess, иди же уже есть ЧПУ, но htaccess парит моск?
Если ЧПУ уже есть, то правила мягко говоря странные(2 правило ваще отжег;))
И чем отличаются "полная новость" и "полная новость в категории"?

Точно второе отбрасываем. )))

Короче Чпу работает

но хочу сделать короткие урлы.

так выглядит полная новость

/index.php?s=full&id=2

Я хочу чтобы она стала такой

news_mosk.html

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#4

1) В htaccess'e жестко прописывать соответствие.


RewriteRule ^news_mosk\.html$ /index.php?s=full&id=2 [L]

2) В таблицах с постами, категориями создать доп.поле `alias`, по которому будет находится соответсвие.


RewriteRule ^([^/]+)$ /index.php?alias=$1

В index.php: выборка из базы, if(mysql_num_rows($result) != 0) и т.д.

seosniks
На сайте с 13.08.2007
Offline
389
#5

Сделал так все пашет

RewriteRule ^([a-z0-9]+).html$ index.php?k=$1

RewriteRule ^news/([a-z0-9]+).html$ index.php?s=full&cpu=$1&id=$1

RewriteRule ^metro/([a-z0-9\_]+).html$ index.php?m=$1

Дело в том что у меня еще чпу стоит и обычные ссылки вида index.php?s=full&id=5&k=5

Всем спасибо.

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