r2d2,Увы, хотим (хочу) вас расстроить
Чтобы иметь такой урл как вы говорите, нужно иметь другую структуру базы, в крайнем случае писать свой контроллер для seoЧПУ.
например priduct_id=5 =>/категория1/категория2/товар
А теперь представьте, что вы переместили товар... Т.е. - не все так просто...
но путь должен быть всегда уникальным.
Но вам остается только пользоваться, тем чем есть.
Если вы сталкивались с другими системами, как это вопрос решается там?
DLE
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6&seourl=$6 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html(/?)+$ engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5&seourl=$5 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 [L]
Мало кому известная система
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?page=$1 [QSA,L]
hostcms
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php
Решение принимается на уровне роутеров, покажу, что внутри
Core_Router::add('robots.txt', '/robots.txt')
->controller('Core_Command_Controller_Robots');
.....
$oDefault_Router_Route = Core_Router::add('default', '()');
Еще примеры? А надо ли?