|
|
|
| Допустим есть в адресной строке url вида site.ru/2009/07/15. После работы .htaccess со следующим кодом:
RewriteEngine on
RewriteBase /
RewriteRule ^([0-9]+)/([0-9]+)/([0-9]+)/?$ index.php?year=$1&month=$2&day=$3
|
т.е. все впринципе хорошо. Но что делаьть, когда url меняется на site.ru/2009/07/15/header_news или даже на такой site.ru/arch/2007. Т.е. получается правила для замены постоянно меняются - как это все учитывать в .htaccess? Все урлы разбирает один файл - index.php. | |
|
|
|
|
|
|
|
для: Albatros
(10.06.2009 в 08:14)
| | кем меняется? | |
|
|
|
|
|
|
|
для: Trianon
(10.06.2009 в 08:50)
| | нууу... просто по ссылкам, т.е. на главной странице есть календарик, где выбирается месяц, год и день. После, выводится список материалов за выбранную дату, ну а по клику на заголовок - непосредственно сам материал. Код же в файле index.php, в зависимости от наличия или отсутствия переменных в url, инклюдит соответствующие скрипты. | |
|
|
|
|
|
|
|
для: Albatros
(10.06.2009 в 09:01)
| | Значит URLs нужно формировать более регулярным образом..
Ну и/или прописать правила для всех используемых вариантов. | |
|
|
|
|
|
|
|
для: Trianon
(10.06.2009 в 09:19)
| | Если прописывать все варианты(ну хотя бы два):
RewriteRule ^([0-9]+)/([0-9]+)/([0-9]+)/?$ index.php?year=$1&month=$2&day=$3
RewriteRule ^([0-9]+)/([0-9]+)/([0-9]+)/([a-zA-Z])/?$ index.php?year=$1&month=$2&day=$3&header=$4
|
то нужно ставить условие: по какому из этих вариантов будет происходить преобразование. Как его записывать? | |
|
|
|
|
|
|
|
для: Albatros
(10.06.2009 в 09:43)
| | передавай всю строку в index.php и там уже разбирай урл | |
|
|
|