Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
cyrax_02

Как обновить кэш стилей ?

Рекомендованные сообщения

Перенёс форум на другой сервер, изменился путь установки + изменилось название поддиректории, в которую установлен форум.

Всё работает нормально, кэш из админки полностью перегенерировал. Но при загрузке страниц форума некоторые картинки (только некоторые) по-прежнему подгружаются по старому пути (со старым названием директории, в которую установлен форум) - по этим картинкам получаю 404 ошибку.

 

Посмотрел - эти старые пути прописаны прямо в исходном коде страниц форума. Вперемешку с новыми путями.

Либо обновление кэша в админке глючит, либо это самое обновление кэша (которое из админки) кэш стилей не обновляет.

 

В папке /public/style_css имеется 4 папки CSS_1, ... CSS_4 (в /CSS_1/ipb_styles.css как раз прописаны старые пути) - это, насколько я помню, те самые стили (обычный, мобильный + 2 тестовых - когда-то пытался ковыряться). Изменил имена всех этих 4 папок - форум нормально загружается и отображается, как будто эти стили (CSS_1, ... CSS_4) не используются вообще. В общем, ничего не понятно. С этим форумом уже задолбался ковыряться - то одно, то десятое...

Поделиться сообщением


Ссылка на сообщение

У папки public должны быть права на запись. Кеш стилей обновляется вместе с кешем шаблонов одной функцией. Если адрес неисправен только у некоторых изображений, нужно найти эти изображения в коде и посмотреть каким образом прописан адрес форума, скорее всего он указан жестко, не переменной.

Поделиться сообщением


Ссылка на сообщение
11/05/16 13:02 (изменено)
У папки public должны быть права на запись.

Имеются.

 

Кеш стилей обновляется вместе с кешем шаблонов одной функцией

Кэш шаблонов - это skinsets ?

 

Изменил имена всех этих 4 папок - форум нормально загружается и отображается, как будто эти стили (CSS_1, ... CSS_4) не используются вообще

Посмотрел - стили загружаются из /public/min/ - т.е. минифицированные версии. Логично. Поэтому, изменение имён директорий /public/style_css/ к проблемам не привело. И генерируются минифицированные версии, судя по всему, в момент перегенерации кэша.

 

Если адрес неисправен только у некоторых изображений, нужно найти эти изображения в коде и посмотреть каким образом прописан адрес форума, скорее всего он указан жестко, не переменной.

Если рассматривать директорию /public/style_css/, то старая директория установки форума присутствует только в /public/style_css/CSS_1/ipb_styles.css - и там все пути прописаны полностью, включая домен.

Если рассматривать исходники стилей, доступные из админки (Внешний вид - Управление стилями - Редактирование стиля - CSS), то проверил их все (ctrl+F) - нигде не встречается упоминание старой директории установки форума.

 

Что имеем:

1. Все картинки с названием старой директории установки форума - это всё .png-картинки и все они запрашиваются из /public/style_images/master/

2. Эти пути прописаны в тех стилях, которые получаются через запросы вида (в отладчике Firefox на вкладке "Стили" эти стили обозначены как "index.php", т.к. получены через запрос .../index.php?...):

 

/public/min/index.php?ipbv=757070114f9adcb6f31ec3152818d259&f=public/style_css/css_1/ipb_mlist_addon.css,public/style_css/css_1/ipb_styles.css,public/style_css/css_1/calendar_select.css,public/style_css/css_1/ipb_common.css

 

/public/min/index.php?ipbv=757070114f9adcb6f31ec3152818d259&f=public/style_css/css_1/ipb_mlist_addon.css,public/style_css/css_1/ipb_styles.css,public/style_css/css_1/calendar_select.css,public/style_css/css_1/ipb_common.css

 

3. Как я уже написал, исходники стилей (доступные из админки) не содержат прямо прописанных путей - проверил все стили по Ctrl+F - только переменные.

4. Например, для стиля IP.Board (физическая папка = CSS_1) в исходниках ipb_styles.css прописано:

#search .submit_input {
background: #7ba60d url({style_images_url}/search_icon.png) no-repeat 50%;
text-indent: -3000em;
padding: 0; border: 0;
border: 1px solid #7ba60d;
display: block;
...

На клиенте (в браузере) [/public/min/index.php?]-запросами получаем такие стили:

#search
.submit_input {
background:#7ba60d url(http://site.ru/стараядиректорияустановкифорума/public/style_images/master/search_icon.png) no-repeat 50%;
text-indent:-3000em;
padding:0;
border:0;
border:1px
solid #7ba60d;
display:block;
...

Отсюда делаем вывод: переменная [style_images_url], отвечающая за путь к картинкам, в админке не изменена. Пошёл искать...

Изменено пользователем cyrax_02

Поделиться сообщением


Ссылка на сообщение

Слишком много букв, не осилил весь пост. Если в вкратце то, /public/min/ - это minify, кеш которого записывается в /cache/tmp/. /public/style_css/ это кеш стилей. Стили редактируются в АЦ. {style_images_url} - макрос, который при записи кеша на диске заменяется на адрес форума.

Обновить кеш стилей из АЦ.

Удалить кеш minify.

Профит.

Поделиться сообщением


Ссылка на сообщение
11/05/16 13:39 (изменено)
Обновить кеш стилей из АЦ.

Обновлял. Не раз. Само по себе не помогает.

 

Удалить кеш minify.

Из директории /cache/tmp/ удалил все файлы, начинающиеся с "minify..." (остались папки CSS и URI с 3 файлами .ser). Перезагрузил страницы форума - в браузере получил большую красную надпись - "Не удалось загрузить таблицы стилей" (похоже, /public/min/index.php? вернул пустой body или какую-то козявку - в тот момент не проверил).

 

Далее в очередной раз полностью обновил кэш борда из админки, после этого всё осталось по-прежнему (в /cache/tmp/ minify-файлы были пересозданы). Эти самые картинки снова грузятся из старой директории установки форума, /public/min/index.php? возвращает в качестве {style_images_url} старую директорию установки форума. Всё так, как я описал в своём предыдущем посте.

 

Профит.

Не профит )

Изменено пользователем cyrax_02

Поделиться сообщением


Ссылка на сообщение
11/05/16 13:50 (изменено)

По старой директории установки форума скрипт /public/min/index.php? прописывает:

/public/style_images/master/search_icon.png

/public/style_images/master/advanced_search.png

/public/style_images/master/topic_button.png

/public/style_images/master/user_navigation.png

/public/style_images/master/header_dropdown.png

/public/style_images/master/icon_inbox.png

/public/style_images/master/branding_bg.png

/public/style_images/master/icon_quicknav.png

/public/style_images/master/moderation_cog.png

/public/style_images/master/gradient_bg.png

/public/style_images/master/progressbar_warning.png

/public/style_images/master/maintitle.png

...

Изменено пользователем cyrax_02

Поделиться сообщением


Ссылка на сообщение

Где и каким образом прописаны эти картинки? Проверьте адреса в настройках форума.

Поделиться сообщением


Ссылка на сообщение
11/05/16 13:52 (изменено)
Где и каким образом прописаны эти картинки?

 

4. Например, для стиля IP.Board (физическая папка = CSS_1) в исходниках ipb_styles.css прописано:

#search .submit_input {
background: #7ba60d url({style_images_url}/search_icon.png) no-repeat 50%;
text-indent: -3000em;
padding: 0; border: 0;
border: 1px solid #7ba60d;
display: block;
...

На клиенте (в браузере) [/public/min/index.php?]-запросами получаем такие стили:

#search
.submit_input {
background:#7ba60d url(http://site.ru/стараядиректорияустановкифорума/public/style_images/master/search_icon.png) no-repeat 50%;
text-indent:-3000em;
padding:0;
border:0;
border:1px
solid #7ba60d;
display:block;
...

Т.е. вот эта штука (макрос, как вы говорите) - {style_images_url} - для картинок (в частности) генерирует некорректный путь (со старым названием директории установки форума).

Изменено пользователем cyrax_02

Поделиться сообщением


Ссылка на сообщение
Проверьте адреса в настройках форума.

В (Настройки > System > Глобальные настройки) присутствуют:

Мета тег: image_src (для Facebook) = {style_image_url}/meta_image.png

Путь до директории загрузок = новый путь к /uploads

Путь до директории кеша = пусто

Урлы тоже все корректные

 

В (Настройки > Forums > Темы, Сообщения и Опросы) никаких путей и урлов нет

Больше форумных групп настроек нет - только "Темы, Сообщения и Опросы".

 

Вроде как где-то в настройках ещё должны быть пути... или нет...

Поделиться сообщением


Ссылка на сообщение

В БД в таблицах

- ..._core_sys_conf_settings

- ..._core_sys_settings_titles

упоминания старойдиректорииустановкифорума нет.

 

В каких ещё таблицах могут храниться пути ? Если таких больше нет, значит, стараядиректорияустановкифорума хранится в каких-то кэшах, которые стандартными средствами борда (из админки) не чистятся...

Поделиться сообщением


Ссылка на сообщение

Проверьте значение константы PUBLIC_DIRECTORY в initdata.php (или constants.php)

Попробуйте удалить ipb_styles.css и сбросить кеш шаблонов в АЦ.

Поделиться сообщением


Ссылка на сообщение
11/06/16 13:58 (изменено)
Проверьте значение константы PUBLIC_DIRECTORY в initdata.php (или constants.php)

/**
* PUBLIC_DIRECTORY
*
* The name of the public directory
*/
if ( !defined( 'PUBLIC_DIRECTORY' ) )
{
define( 'PUBLIC_DIRECTORY', 'public' );
}

Файла constants.php нет.

 

Попробуйте удалить ipb_styles.css и сбросить кеш шаблонов в АЦ.

Офигеть. Кэш шаблонов обновляется не через "Система - Инструменты - Управление кэшем", а через "Внешний вид - Инструменты - Обновление кеш-файлов". Хотя бы ссылку там сделали бы на обновление кэша шаблонов, если уж туда его не включили...

 

Вопрос решён. Только вот в придачу ещё обновил данные базового стиля (обновление прошло успешно), но после перезагрузки страницы дата обновления файлов templates.xml отображется старая:

 

Для приложений:

Система (templates.xml обновлен - 16-July 13)

Форумы (templates.xml обновлен - 16-July 13)

Пользователи (templates.xml обновлен - 29-May 13)

Календарь (templates.xml обновлен - 28-May 13)

Впрочем, с такими мелочами можно бесконечно ковыряться...

Изменено пользователем cyrax_02

Поделиться сообщением


Ссылка на сообщение

Офигеть. Кэш шаблонов обновляется не через "Система - Инструменты - Управление кэшем", а через "Внешний вид - Инструменты - Обновление кеш-файлов"

Приехали. Управлением кешом - это системные кешы системы. А кеш шаблонов сбрасывается в Инструменты шаблонов. По моему это уже давно всем известно еще с версии 2x, и здесь тысячу раз говорилось как его обновить. Я предполагал что проблема с правами на запись у этого файла, но такого даже не ожидал.

 

Только вот в придачу ещё обновил данные базового стиля (обновление прошло успешно), но после перезагрузки страницы дата обновления файлов templates.xml отображется старая:

Базовый стиль обновляется из xml, а не наоборот. Дата файла меняться не должна.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...