В общем тогда суть задачи опишу...
Проблема №1.
И кстати - посмотрел (попробовал) сделать битые адреса на сайте который работает на typo3.
Беру от "туды не сюды":
http://site-name/weffwefwe/fwefwe/fwefwefwe/fwefwefwe-1
http://site-name/weffwefwe/fwefwe/fwefwefwe/fwefwefwe-2
http://site-name/weffwefwe/fwefwe/fwefwefwe/fwefwefwe-3
http://site-name/weffwefwe/fwefwe/fwefwefwe/fwefwefwe-4
http://site-name/weffwefwe/fwefwe/fwefwefwe/fwefwefwe-....
http://site-name/weffwefwe/fwefwe/fw...fwefwe-1000032
И так далее - и что интересно ... вся эта лабуда будет находить свое отражение в двух таблицах (хотя адреса битые - и по ним идет 404-ошибка!:
sys_log (если конечно не отключено ведение логов в localconf - хотя у меня не получалось на 100%-их ведение отключить - отключаешь - все равно что-то пишется...
tx_realurl_chashcache (если на сайте установлено расширение realurl)
Причем не важно - правильный или бытый адресе...
Все равно в tx_realurl_chashcache - будут писаться строки:
0185ffa2f1afa6f2ef1f22d1f4826305 468f8782df5c94cb79eb2dd5642490dc
А соответственно - значит что если сделать много битых адресов - то размеры этих таблиц будут постоянно расти - и "убивать" сайт.
Суть задачи в том, что нужно как-то сохранять кэш для smarty....
Но сейчас то, как есть - получается если запросить вариант битого адреса
http://site-name/weffwefwe/fwefwe/fw...fwefwe-1000032
то кэш будет сохраняться и по нему...
а это го не нужно....
Т.е. примерно так:
PHP код:
$cache_id = $GLOBALS['TSFE']->id . "." . $GLOBALS['TSFE']->type . "." . $GLOBALS['SMARTY_COBJ_TEMPLATE_COUNTER'] . "." . $GLOBALS['TSFE']->cHash; // . "." . $parentObject -> currentRecord . "-" . $TypoScriptKey;
Нашел как вариант - составлять список разрешенных к сохранению в кэш страниц...
А кэш будем ($cache_id) - сохранять по:
"
имени сайта . запрошенного адреса . № элемента на странице..."
И при запросе страницы - второй раз - если она попала в список разрешенных будем разрешать сохранение элементов на ней в кэш... А если была 404-ошибка . то страница не попадает в список разрешенных страниц....
И тогда, что бы все верно работало - нужно что бы везде стояли 404-ошибки...
Т.к. по ним будет определяться - разрешено заносить страницу в кэш или нет (вернее объекты, которые на ней есть)...
Думаю - что вполне подойдет для проектов до 1 000 страниц.
Здесь вопрос в том, что 404- ошибку приходиться устанавливать, как для страницы (причем эти процессы автоматизированны) - а вот с плагинами - 404-ошибку приходиться устанавливать в ручную - в зависимости от логики, которая там применяться...