|
|
22.05.2013, 10:46
|
|
Balu
Котлевец Владислав
Зарегистрирован: 2009-03-12
Сообщений: 14
|
Добрый день!
Пытаюсь преобразовать динамические адреса в статические.
Т.е. URL вида site.ru/?var=1 получить site.ru/bingo
Для этого в .htaccess прописываю
Код:RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^bingo$ /netcat/require/e404.php?REQUEST_URI=/?var=1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ /netcat/require/e404.php?REQUEST_URI=$1 [L,QSA]
Такой код не работает.
Если же делаю обычную переадресацию на страницу, сформированную средствами NetCat, то код срабатывает.
Пример -
Код:RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^article$ /netcat/require/e404.php?REQUEST_URI=/articles/ [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ /netcat/require/e404.php?REQUEST_URI=$1 [L,QSA]
Подскажите, пожалуйста, что именно я делаю не так?
ebugen
|
|
|
22.05.2013, 22:12
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
Мне кажется, что причина в этом:
Код:RewriteRule ^bingo$ /netcat/require/e404.php?REQUEST_URI=/?var=1 [L,QSA]
Ведь у вас получается два знака "?" в URL, что недопустимо.
Скорее всего надо сделать так:
Код:RewriteRule ^bingo$ /netcat/require/e404.php?REQUEST_URI=/&var=1 [L,QSA]
|
|
|
22.05.2013, 23:34
|
|
Balu
Котлевец Владислав
Зарегистрирован: 2009-03-12
Сообщений: 14
|
Нет, так тоже не работает...
ebugen
|
|
|
23.05.2013, 11:32
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
еще можно попробовать не & а просто &
А какой командой вы проверяете значение передаваемой переменной?
И где проверяете - в компоненте или в макете дизайна?
Попробуйте делать проверку значения переменной и тут, и там.
|
|
|
23.05.2013, 11:36
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
Вот здесь еще хорошие рекомендации по настройке htaccess для неткат есть: ссылка
В том числе как убирать .html расширение у некоторых типов ссылок.
|
|
|
24.05.2013, 09:52
|
|
Balu
Котлевец Владислав
Зарегистрирован: 2009-03-12
Сообщений: 14
|
Да я, собственно, отсюда и брал примеры. Не работает нифига. И, кстати, у него в примере два знака вопроса передаются в запрос, а все говорят, что так нельзя...
ebugen
|
|
|
24.05.2013, 10:05
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
Да, действительно.
Кстати, а как все-таки вы проверяете значение передаваемой переменной, и где(в компоненте или в макете дизайна)?
Я сталкивался иногда с тем, что переменная $_GET['var'] была нормально присвоена, а $var - нет.
|
|
|
27.05.2013, 22:06
|
|
Balu
Котлевец Владислав
Зарегистрирован: 2009-03-12
Сообщений: 14
|
Цитата:Да, действительно.
Кстати, а как все-таки вы проверяете значение передаваемой переменной, и где(в компоненте или в макете дизайна)?
Я сталкивался иногда с тем, что переменная $_GET['var'] была нормально присвоена, а $var - нет.
Проверка идет в компоненте, в системных настройках.
ebugen
|
|
|
29.05.2013, 07:33
|
|
Руслан Густокашин
Студия Вэлпис
Зарегистрирован: 2012-02-06
Сообщений: 962
|
А как переменную проверяете, в массиве $_GET или обычным способом? Пробовали другой способ проверки (например, $_GET вместо обычного)?
|