Цитата:
|
Сообщение от Hubbitus
а так работает:
RewriteRule ^cat/([^/]*)?/?([^/]*)?/?([^/]*)?/?$ /index.php?cat=$1&subcat=$2&subcat2=$3&art=$4 [L]
Ну и скольку угодно можно прописать их так, хоть 100 параметров возможных и необязательных.
|
Забыл добавить в условии еще одну ([^/]*)?/ - иначе при 4-х параметрах выдает "документ не найден" (ошибка 404).
Хотя может это оттого, что я делал следующее правило:
RewriteRule ^list/([^/]*)?/?([^/]*)?/?([^/]*)?/?([^/]*)?/?$ /anime/rabota.php?cat=$1&subcat=$2&subcat2=$3&art=$4 [L]
файл .htaccess лежит подкаталоге anime домена.
А как надо слелать, чтобы выдать последний параметр за HTML-файл, то есть запрос типа
domain.ru/cat/1/2/3/4.htm
?
Я смог решить только на уровне скрипта. То есть для последнего параметра на PHP:
PHP код:
$arte=strpos($art, ".htm");
if ($arte === false) {
// Ничего менять не надо
} else {
$art=substr($art,0,$arte);
}
echo "$art";
Но это нужно знать, какой параметр проверять. Может, можно решить на уровне mod_rewrite для любого параметра?