Показать сообщение отдельно
Старый 10.07.2013, 18:15   #5
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Цитата:
Сообщение от dmartynenko Посмотреть сообщение
Хэш добавляется только при генерации ссылки ядром. В случае RealURL хэша не видно, но он есть. Просто сохраняется в отдельной таблице url+хэш и убирается из выводимого на страницу url.

По остальным вопросам логика такая.

Если вы запрашиваете несуществующий id страницы, то вам вернется ответ 404 и ничего ни в какие кэши не сохраниться.

Если вы запрашиваете страницу с параметром page/?tx_myext_pi1[page] = 352326 то тут происходит следующее.
  1. Если нет cHash (в ссылке или кэше RealURL), то вернется из кэша содержимое страницы page/. Контент страницы будет всегда один и тот же, без учета переданных параметров. Пример - вы ссылаетесь на одну и ту же страницу с разных сайтов, баннеров с разными utm_xxx параметрами для Google Analytics.
  2. Если есть cHash, то это значит что вы сгенерировали ссылку page/?tx_myext_pi1[page] = 352326 через typolink с парамером useCacheHash. Тогда при заходе по такой ссылке новое содержимое страницы (т.е. контент USER плагинов) будет записано в кэш отдельной строкой с привязкой к уникальному cHash.
  3. Если у вас на странице есть плагин USER_INT, то в обоих случая вы сможете в нем обработать значение tx_myext_pi1[page] = 352326 и сделать что вам нужно - например отправить пользователя на 404 или еще куда-то.

То есть проблему "завалить сайт через кэш" создатели TYPO3 решили давно и успешно через механизм cHash. Поэтому не устаревающая классика вам в помощь: http://typo3.org/documentation/artic...ies-of-chash-1
В общих и конкретных чертах теперь окончательно ясно.
__________________
Иван Литовченко
http://iv-litovchenko.ru/
Ивано++ вне форума   Ответить с цитированием