Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
15.12.2010, 11:44 | #1 |
Senior Member
|
Как отключить compressor в 4.4+ и его последствия?
Недавно обновился на версию 4.4.4 с версии 4.3.8 и все ссылки на css и js моего шаблона приобрели вид /fileadmin/template/screen.css?1289786904 .
Подозреваю что это последствия работы compressor, хотя любой gzip в localconf.php отключен наглухо. Такого вида "динамические" ссылки на тщательно вылизанный и пожатый мой собственный css категорически не устраивают хотя из-за того что вся статика заранее пожата gzip и отдается только через nginx, который ищет именно статически пожатые файлы, а такого вида ссылка вводит его в заблуждение и он заново жмет один и то же файл на лету. Гугль ничего путного, за исключением правки класса pagerenderer, не посоветовал, поэтому обращаюсь тут к коллективному разуму. Возможно ли как-то при помощи TS привести эти ссылки к прежнему виду без "динамической" составляющей? Заранее признателен за любые советы. |
16.12.2010, 11:55 | #2 | ||
Senior Member
|
Залезаем в папку с распакованным новым ядром typo3 (у меня это typo3_src-4.4.4). Видим файл NEWS.txt - читаем. Этот файл рекомендуется читать при каждом обновлении ядра системы!
Видим: Цитата:
Цитата:
К этим же файлам для внешнего интерфейса добавляется временной шаблон во избежание проблем с кешированием. То есть, если время сохранения файла изменилось на сервере, то и добавляемое число также меняется, при этом содержимое самого файла остается прежним. Это позволяет механизмам кеширования правильно обрабатывать измененные файлы - их название поменялось... Как-то так. Последний раз редактировалось Андрей Аксенов; 16.12.2010 в 12:42 |
||
16.12.2010, 14:29 | #3 |
Senior Member
|
Отдельно отмечу что выдаются с этим самым timestamp выдаются мои собственные один раз и навсегда написанные css и js, а вот как раз стили того же CSC выдаются без timestamp. Точно так же хочу заметить что мои стили уже запакованы прекрасно работающей под любой *nix системой командой
Код:
find /www -type f -name '*.css' -exec gzip -9 '{}' \; Повторю вопрос - как эту "фичу" отключить не залезая в код ядра? |
16.12.2010, 17:18 | #4 |
Administrator
|
В файле t3lib/config_default.php
написано про $TYPO3_CONF_VARS[FE][versionNumberInFilename] 'versionNumberInFilename' => 'querystring', // String. Allows to automatically include a version number (timestamp of the file) to referred CSS and JS filenames on the rendered page. This will make browsers and proxies reload the files if they change (thus avoiding caching issues). Set to 'embed' will have the timestamp embedded in the filename, ie. filename.1269312081.js. IMPORTANT: 'embed' requires this .htaccess rule to work: RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - RewriteRule ^(.+)\.(\d+)\.(php|js|css|png|jpg|gif)$ $1.$3 [L]. Set to 'querystring' (default setting) to append the version number as a query parameter (doesn't require mod_rewrite). Set to '' will turn this functionality off (behaves like TYPO3 < v4.4). т.е. надо поставить в localconf.php $TYPO3_CONF_VARS['FE']['versionNumberInFilename'] = ''; |
16.12.2010, 23:59 | #5 |
Senior Member
|
Так это просто поменяет отображение этих самых имен с вида file.js?timestamp на file.timestamp.js и это будет касаться только динамически создаваемых при генерации страницы самой typo3 стилей и скриптов.
Меня же волнует вопрос почему он этот самый querystring добавляет к моим файлам, которые, подчеркиваю, не меняются вовсе, и как эту ненужность отключить. |
17.12.2010, 12:02 | #6 |
Administrator
|
нет, будет file.js и file.css
|
17.12.2010, 12:24 | #7 |
Senior Member
|
Попробовал и включить и выключить этот параметр в InstallTool - влияет исключительно на отображение админки. Для фронтенда в обоих случаях выводит одно и то же:
Код:
<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_670d0f71b2.css?1291940230" media="all" /> <link rel="stylesheet" type="text/css" href="fileadmin/tmpl/screen.css?1292374803" media="screen" /> <link rel="stylesheet" type="text/css" href="fileadmin/tmpl/print.css?1163606366" media="print" /> <script src="typo3temp/javascript_93077bb238.js?1291906354" type="text/javascript"></script> |
17.12.2010, 12:26 | #8 |
Senior Member
|
Ну если переключить на file.timestamp.js, а в настройках поставить:
PHP код:
То к названию файла будет прибавлятся это самое ''... То есть ничего... А что касается ядра, то где и как, надо бы почитать в релизе, или в фордж, там наверняка есть, просто со временем сейчас туго... |
17.12.2010, 12:51 | #9 |
Senior Member
|
Именно так и стоит в последнем варианте, результат тот же.
Если переключить в единицу, то ломается вид админки, потому что не прописана добавка в htaccess, а для фронтенда все остается по-прежнему. |
17.12.2010, 20:36 | #10 |
Senior Member
|
Исправляюсь - есть два параметра VersionNumberInFilename - один для бэкенда, второй для фронтенда. Соответственно если менять параметр для фронтенда как указал Валерий все работает как надо.
Вопрос решен. Спасибо. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как отключить кэш на стороне клиента? | oxenbash | Общие вопросы | 0 | 15.12.2009 17:11 |
Как отключить default язык в BE, если перевод есть вначале только на дополнительный? | oxenbash | Общие вопросы | 1 | 05.11.2009 18:46 |
Как отключить парсинг? | Э | HTMLArea, RTE, tinymce_rte и другие визуальные редакторы | 10 | 12.05.2009 22:37 |
Как отключить кеш (config.no_cache) | c0d3r | Общие вопросы | 2 | 22.12.2006 10:18 |
А КАК ЕГО СТАВИТЬ _ ТО С НУЛЯ????? | Николай | Установка | 6 | 23.02.2006 14:56 |