Page 1 of 2

Реврайты, редирект вместо категории на аут сж

Posted: Thu Aug 31, 2017 12:54 pm
by Axcel
Проблема с реврайтами. Сж скрипт сторонний.
Посылаю на категорийную страницу http://my_domain.net/list/handjobs.html и получаю в ответ:
http://my_domain.net/r%89%EDz.
В хтакцессе
#by default, ctr rate, best
RewriteRule ^list/([^/-]+)\.html$ /get/cgi/out.php?force_template=category_page&url=content&p=100&dont_count_in_trade=true&skip_sell=true&group_name=$1&order=ctr&%{QUERY_STRING} [L]
#page numbers, best
RewriteRule ^list/([^-]+)-([^-]+).html$ /get/cgi/out.php?force_template=category_page&url=content&p=100&dont_count_in_trade=true&skip_sell=true&group_name=$1&order=ctr&page=$2&%{QUERY_STRING} [L]
#new galleries
RewriteRule ^new/([^/-]+).html$ /get/cgi/out.php?force_template=category_page2&url=content&p=100&dont_count_in_trade=true&skip_sell=true&group_name=$1&order=date&%{QUERY_STRING} [L]
#new, page numbers
RewriteRule ^new/([^-]+)-([^-]+).html$ /get/cgi/out.php?force_template=category_page2&url=content&p=100&dont_count_in_trade=true&skip_sell=true&group_name=$1&order=date&page=$2&%{QUERY_STRING} [L]

Пробую послать напрямую на категорию
http://my_domain.net/get/cgi/out.php?force_template=category_page&url=content&p=100&dont_count_in_trade=true&skip_sell=true&group_name=handjobs&order=ctr
и получаю редирект на аут сиджа

GET /get/cgi/out.php?force_template=category_page&url=content&p=100&dont_count_in_trade=true&skip_sell=true&group_name=handjobs&order=ctr HTTP/1.1
Host: my_domain.net
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cookie: x5d6=YTo1OntzOjI6ImlwIjtpOjE0MjcyMTM3NjE7czoxOiJmIjtpOjA7czoxOiJzIjtzOjc6InVua25vd24iO3M6MToidiI7YTowOnt9czoyOiJjYyI7aToxO30%3D
Connection: keep-alive
Upgrade-Insecure-Requests: 1

HTTP/1.1 302 Found
Server: nginx
Date: Thu, 31 Aug 2017 12:48:56 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
Keep-Alive: timeout=60
X-Powered-By: PHP/5.6.30
Location: ../../let.php?u=r%89%EDz

Где ошибка, подскажите, пожалуйста.

Re: Реврайты, редирект вместо категории на аут сж

Posted: Fri Sep 01, 2017 1:00 pm
by admin
Попробовали так и так - все ок работает.
Апедйты точно все ?

Re: Реврайты, редирект вместо категории на аут сж

Posted: Fri Sep 01, 2017 1:21 pm
by Axcel
Да, сразу после обнаружения проблемы проапдейтил.
У меня в подобном сидже, но только с сж скриптом тоже смартом всё работает правильно.
Проблема связана со сторонним сж скиптом.

Re: Реврайты, редирект вместо категории на аут сж

Posted: Fri Sep 01, 2017 1:23 pm
by admin
Если это 2я версия скирпта то скидывайте фтп, я проверю
Если первая то лучше поставить 2ю.

Re: Реврайты, редирект вместо категории на аут сж

Posted: Tue Sep 05, 2017 1:13 am
by Axcel
2я.
Доступ ушёл в ПМ.

Re: Реврайты, редирект вместо категории на аут сж

Posted: Tue Sep 05, 2017 7:05 am
by admin
У вас стоит в коммон

if (isset($_GET['url'])) $_GET['url'] = base64_decode($_GET['url']);

поэтому в скрипт приходит не url = content а url = r%89%EDz и дальше скрипт редиректит на этот урл.

Re: Реврайты, редирект вместо категории на аут сж

Posted: Tue Sep 05, 2017 8:32 am
by Axcel
Так а что делать, чтобы избежать этого при открытии категорий?

Re: Реврайты, редирект вместо категории на аут сж

Posted: Tue Sep 05, 2017 8:53 am
by admin
В том же if првоерьте наличие group_name например в параметрах

Re: Реврайты, редирект вместо категории на аут сж

Posted: Tue Sep 05, 2017 9:37 am
by Axcel
Вы сами видите, что находится в условии в common.php. Зачем писать, чтобы я проверил наличие group_name, заведомо зная, что этого там нет.
Я не программист пхп и не писал смарт сж.
Если вы напишите: возьми эту строчку и поставь сюда, я пойму.
А здесь, такое впечатление, ответы на "отстать"(

Re: Реврайты, редирект вместо категории на аут сж

Posted: Tue Sep 05, 2017 9:42 am
by admin
Сложно попасть в нужный уровень
Кому-то напишешь и получаешь в ответ "я сам знаю!", а кому-то тоже самое и "я скрипт не писал !"
Поэтому вы не переживайте, а просто уточняйте что не ясно)

if (isset($_GET['url']) and !isset($_GET['group_name'])) $_GET['url'] = base64_decode($_GET['url']);