cyrax_02 1 11/04/16 22:51 Перенёс форум на другой сервер, изменился путь установки + изменилось название поддиректории, в которую установлен форум.Всё работает нормально, кэш из админки полностью перегенерировал. Но при загрузке страниц форума некоторые картинки (только некоторые) по-прежнему подгружаются по старому пути (со старым названием директории, в которую установлен форум) - по этим картинкам получаю 404 ошибку. Посмотрел - эти старые пути прописаны прямо в исходном коде страниц форума. Вперемешку с новыми путями.Либо обновление кэша в админке глючит, либо это самое обновление кэша (которое из админки) кэш стилей не обновляет. В папке /public/style_css имеется 4 папки CSS_1, ... CSS_4 (в /CSS_1/ipb_styles.css как раз прописаны старые пути) - это, насколько я помню, те самые стили (обычный, мобильный + 2 тестовых - когда-то пытался ковыряться). Изменил имена всех этих 4 папок - форум нормально загружается и отображается, как будто эти стили (CSS_1, ... CSS_4) не используются вообще. В общем, ничего не понятно. С этим форумом уже задолбался ковыряться - то одно, то десятое... Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/05/16 06:04 У папки public должны быть права на запись. Кеш стилей обновляется вместе с кешем шаблонов одной функцией. Если адрес неисправен только у некоторых изображений, нужно найти эти изображения в коде и посмотреть каким образом прописан адрес форума, скорее всего он указан жестко, не переменной. Поделиться сообщением Ссылка на сообщение
cyrax_02 1 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], отвечающая за путь к картинкам, в админке не изменена. Пошёл искать... Изменено 5 ноября 2016 пользователем cyrax_02 Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/05/16 13:08 Слишком много букв, не осилил весь пост. Если в вкратце то, /public/min/ - это minify, кеш которого записывается в /cache/tmp/. /public/style_css/ это кеш стилей. Стили редактируются в АЦ. {style_images_url} - макрос, который при записи кеша на диске заменяется на адрес форума. Обновить кеш стилей из АЦ. Удалить кеш minify. Профит. Поделиться сообщением Ссылка на сообщение
cyrax_02 1 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} старую директорию установки форума. Всё так, как я описал в своём предыдущем посте. Профит.Не профит ) Изменено 5 ноября 2016 пользователем cyrax_02 Поделиться сообщением Ссылка на сообщение
cyrax_02 1 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... Изменено 5 ноября 2016 пользователем cyrax_02 Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/05/16 13:50 Где и каким образом прописаны эти картинки? Проверьте адреса в настройках форума. Поделиться сообщением Ссылка на сообщение
cyrax_02 1 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} - для картинок (в частности) генерирует некорректный путь (со старым названием директории установки форума). Изменено 5 ноября 2016 пользователем cyrax_02 Поделиться сообщением Ссылка на сообщение
cyrax_02 1 11/05/16 14:05 Проверьте адреса в настройках форума. В (Настройки > System > Глобальные настройки) присутствуют:Мета тег: image_src (для Facebook) = {style_image_url}/meta_image.pngПуть до директории загрузок = новый путь к /uploadsПуть до директории кеша = пустоУрлы тоже все корректные В (Настройки > Forums > Темы, Сообщения и Опросы) никаких путей и урлов нетБольше форумных групп настроек нет - только "Темы, Сообщения и Опросы". Вроде как где-то в настройках ещё должны быть пути... или нет... Поделиться сообщением Ссылка на сообщение
cyrax_02 1 11/05/16 14:16 В БД в таблицах- ..._core_sys_conf_settings- ..._core_sys_settings_titlesупоминания старойдиректорииустановкифорума нет. В каких ещё таблицах могут храниться пути ? Если таких больше нет, значит, стараядиректорияустановкифорума хранится в каких-то кэшах, которые стандартными средствами борда (из админки) не чистятся... Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/05/16 21:50 Проверьте значение константы PUBLIC_DIRECTORY в initdata.php (или constants.php)Попробуйте удалить ipb_styles.css и сбросить кеш шаблонов в АЦ. Поделиться сообщением Ссылка на сообщение
cyrax_02 1 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)Впрочем, с такими мелочами можно бесконечно ковыряться... Изменено 6 ноября 2016 пользователем cyrax_02 Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/06/16 14:14 Офигеть. Кэш шаблонов обновляется не через "Система - Инструменты - Управление кэшем", а через "Внешний вид - Инструменты - Обновление кеш-файлов"Приехали. Управлением кешом - это системные кешы системы. А кеш шаблонов сбрасывается в Инструменты шаблонов. По моему это уже давно всем известно еще с версии 2x, и здесь тысячу раз говорилось как его обновить. Я предполагал что проблема с правами на запись у этого файла, но такого даже не ожидал. Только вот в придачу ещё обновил данные базового стиля (обновление прошло успешно), но после перезагрузки страницы дата обновления файлов templates.xml отображется старая:Базовый стиль обновляется из xml, а не наоборот. Дата файла меняться не должна. Поделиться сообщением Ссылка на сообщение