Подскажите по .htaccess

tokareff
На сайте с 30.08.2006
Offline
95
654

Необходимо при запросе super-10-20-puper.html направить на

index.php?categoryID=10&offset=20&sort=name&direction=DESC

Сделал такое правило

RewriteRule ^super-([^/]*)-([^/]*)-puper.html$ index.php?categoryID=$1&offset=$2&sort=name&direction=DESC [L]

однако не работает.

Что в нем неверно?

Pisarev_OS
На сайте с 06.10.2008
Offline
149
#1

Попробуйте

Нужны мобильные прокси? (https://vk.cc/cmaHBE) ЖМИ!
tokareff
На сайте с 30.08.2006
Offline
95
#2

я запрос для примера написал

вместо 10 и 20 могут быть любые числа (генерятся скриптом), которые и описаны как ([^/]*)

в конечном урле подставляются как $1 и $2

[Удален]
#3

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule

мона так
RewriteRule ^index.php?categoryID=([^/]+)&offset=([^/]+)&sort=name&direction=DESC super-$1-$2-puper.html$ [L]

мона так
RewriteRule ^super-([^/]+)-([^/]+)-puper.html http://site/index.php?categoryID=$1&offset=$2&sort=name&direction=DESC [R=301,L]

)))) пробуй всяко

поправил немного

tokareff
На сайте с 30.08.2006
Offline
95
#4

2 KosoyRoman

Необходимо именно super-([^/]*)-([^/]*)-puper.html (типа статические ЧПУ)

направить на index.php?categoryID=$1&offset=$2&sort=name&direction=DESC

Ваш вариант (второй) абсолютно идентичен моему в первом посте.

[Удален]
#5

tokareff ты не прав )) ты про [R=301,L] забыл ))) указывать то надо редирект)), а у тебя приведено правило для ЧПУ


Это для использования ЧПУ
RewriteRule ^index.php?categoryID=([^/]+)&offset=([^/]+)&sort=name&direction=DESC$ super-$1-$2-puper.html [L]

Это для редиректа
RewriteRule ^super-([^/]+)-([^/]+)-puper.html http://site/index.php?categoryID=$1&offset=$2&sort=name&direction=DESC [R=301,L]
tokareff
На сайте с 30.08.2006
Offline
95
#6

ЧПУ - это мой вариант. Он описан в первом посте. Не работает.

[Удален]
#7

... удалено (не ясно объяснил ТС в первом посте).

tokareff
На сайте с 30.08.2006
Offline
95
#8

Хватит тыкать! Сами внимательно читайте!

Мое правило из первого поста не работает, Ваше тоже.

Объясню доходчивее:

двиг генерит урлы типа _http://сайт/index.php?categoryID=10&offset=20&sort=name&direction=DESC

ЧПУ сделал вида _http://сайт/super-10-20-puper.html по клику на который должна загрузиться инфа страницы указанной выше.

[Удален]
#9

мдя..

так бы сразу сказал, а не перенаправление...


Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^super-([0-9]*)-([0-9]*)-puper.html index.php?categoryID=$1&offset=$2&sort=name&direction=DESC [NC]

держи.

проверил всё работает


index.php

<?

if($_GET['categoryID'] == 10 && $_GET['offset'] == 20 && $_GET['sort'] == name && $_GET['direction'] == DESC){
echo "ok";
}else{
echo "fuck";
}

?>

.htaccess

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^super-([0-9]*)-([0-9]*)-puper.html index.php?categoryID=$1&offset=$2&sort=name&direction=DESC [NC]

запрашиваем

_http://localhost/super-10-20-puper.html

ответ "ок".

tokareff
На сайте с 30.08.2006
Offline
95
#10

Разобрался.

Мое правило тоже работает и оно принципиально не отличается от предложенного Вами.

Просто очень похожее правило (c применением super и puper) для немного других урлов используется в этом же .htaccess

При их удалении, предложенный мною в первом посте код работет.

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