Контроль параметров GET запроса

123
DiAksID
На сайте с 02.08.2008
Offline
236
#11
Swif:
Досада в том что это не CMS, а самописный движок, и request_string я и пытаюсь обработать. в том то и вопрос топика

да ну? аж "движок" сделали? а тупо пробежаться по массиву $_GET и тупо проверить элементы и их значения на валидность задача непосильная? ;)

а в деталях никто корме вас не знает, что вы там "насамописали", телепаты тут нарасхват...

Swif:
... Конкуренты покупают пачки ссылок с дублирующимся параметрами на мой сайт...

а вот такие перлы и называются "смешные нубы" 😂 не надо на ночь читать страшные блоги "SEO-гуру" с бредовыми советами - свои мозги включить надёжнее...

show must go on !!!...
S
На сайте с 20.08.2013
Offline
29
#12

Понятно, код на PHP обработки гет запроса никто не напишет. Отвечу сам на свой вопрос через несколько дней

дани мапов
На сайте с 06.09.2012
Offline
204
#13

Упрощенно:

 

$arr = array('category', 'id');

$error = false;

foreach ($_GET as $k => $v) {
if (!in_array($k, $arr, true))
{
$error = true;
break;
}
}


if ($error)
{
echo '....ОШИБКА....';
}

http://www.ahp-net.ru/uricheck.ahp - есть пример разбора

http://www.ahp-net.ru/error404.ahp

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
[Удален]
#14

дани мапов, как минимум еще нужно отслеживать последовательность.

doctorpc
На сайте с 12.07.2009
Offline
112
#15
Swif:
Понятно, код на PHP обработки гет запроса никто не напишет. Отвечу сам на свой вопрос через несколько дней

Не поможет Вам это.

Следующий топик буде в стиле:

"Конкуренты покупают пачки ссылок с вымышленным/не существующим уникальным id".

Вам совешренно по теме задали вопрос, что плохого в дублях в конкретном Вашем случае (в $_GET все равно будет содержаться только последнее значение), чтобы, возможно, дальше дать совет в какую сторону изменять архитектуру своей системы, а не медитировать над параметрами запроса.

Запомните, что все, что доступно пользователям, например, параметры $_GET, $_POST запросов, часть роута(почитайте что это), html разметку форм, которые, опять же, используются при передаче параметров и много много друого - возможно изменить и, практически всегда, самым худшим для Вас образом.

Поэтому Ваша задача не запретить изменения/добавления параметров, а обеспечить адекватную реакцию системы.

Ответьте на поставленный вопрос: что плохого в дубликатах в Вашем случае?

Yur_OK
На сайте с 13.07.2006
Offline
87
#16

Если еще актуально, в конце .htaccess допишите правило

RewriteCond %{QUERY_STRING} !^category=[0-9]+&id=[0-9]+$

RewriteRule .* [R=404,L]

p.s. теоретически могут быть проблемы с уже имеющимися правилами, т.к. нужно подробнее ознакомиться с ними и структурой сайта.

Сердце бьется, мысли зреют, мозг не спит! Облачная база каталогов (/ru/forum/708603)
богоносец
На сайте с 30.01.2007
Offline
774
#17
doctorpc:
Следующий топик буде в стиле:
"Конкуренты покупают пачки ссылок с вымышленным/не существующим уникальным id".

Нет, следующий топик будет в стиле:

Доброжелатели ссылаются на страницы с дублированным содержимым, отвечающие 200, а не 301/404.

Вам совешренно по теме задали вопрос, что плохого в дублях в конкретном Вашем случае (в $_GET все равно будет содержаться только последнее значение),

Скажите, какой из этих урлов проиндексирует бот?

/ru/forum/812957

/ru/forum/812957

/ru/forum/812957

/ru/forum/812957

/ru/forum/comment/12151289

/ru/forum/comment/12151289

а какие отфильтрует?.. ну чтобы продвигать то, что завтра не будет отфильровано. И таких не 1 или 2, а сотни и тыщи. Сможет ли бот сделать всё так, как этого хочет владелец?

_vb_
На сайте с 25.07.2009
Offline
104
#18
богоносец:

Скажите, какой из этих урлов проиндексирует бот?

/ru/forum/812957
/ru/forum/812957
...

А rel="canonical" разве не для таких ситуаций?

Саратовская фракция серча (). Давайте посчитаемся.
DiAksID
На сайте с 02.08.2008
Offline
236
#19
богоносец:
... Скажите, какой из этих урлов проиндексирует бот? ...

те которые бот увидит - сгенерированные роутером системы, если система сама не плодит бредовые урлы (как джумла "без напильника" в руках нуба) - всё будет более чем нормально. разговоры о "злобных конкурентах" параноидальный бред ;)

и даже у боксовой джумлы при, всего лишь, аккуратном (!) использовании никаких проблем с дублями нет ...

D
На сайте с 14.01.2007
Offline
153
#20

Swif, получить данные из GET, потом самому их собрать и сравнить с REQUEST_URI, если не совпало, то редирект на правильный

123

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