Есть условный инфоблок, заказчик создает в нем элемент и загружает картинки в анонс/кастомные свойства (не важно куда), важно что заказчик загружает фотку с нормальным названием - normName.jpg, а битрикс кидает её в папку upload (как и все загруженные картинки впринципе), и кидает её по пути /upload/azaza/blablabla.jpg На процесс этого переименования можно повлиять - не влезая в ядро?
Вообщем проблема решилась, как я и предполагал дело было в ssi, однако здесь есть и мой косяк - не знал я что в настройках www-домена можно отключать ssi ;D
Цитата
Произвели отключение SSI для доменного имени в панели управления хостингом в разделе настроек www-домена. Пожалуйста, проверьте работоспособность.
Тему можно закрывать, если кому-то когда-нибудь из разработчиков понадобится решать вопрос отдачи заголовка last-modified, то код из сообщения #7 - вполне рабочий, по-крайней мере на сегодняшний день
Все же у меня очень большие подозрения в сторону того, что что-то не так с сервером, разместил этот файлик на своем vds где работает apache + nginx и там заголовок без проблем отдается, хоть и нет никакого битрикса.
Пробовал, оно работает на локальном битриксе, а вот там где надо - какая-то дичь. К примеру документ такого вида заголовок там не отдает:
Цитата
<?php //require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/include/prolog_before.php"); //require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_after.php"); //require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); header('Last-Modified: '.gmdate('D, d M Y H:i:s'). ' GMT'); ?> <!do ctype html> <ht ml lang="en"> <head> <met a charset="UTF-8"> <met a name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <met a http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> body </body> </html>
А на локалке отдает. А вот если убрать все вот это:
Цитата
<!do ctype html> <ht ml lang="en"> <head> <met a charset="UTF-8"> <met a name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <met a http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> body </body> </html>
И оставить только это:
Цитата
<?php //require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/include/prolog_before.php"); //require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_after.php"); //require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); header('Last-Modified: '.gmdate('D, d M Y H:i:s'). ' GMT'); ?>
То отдает. В итоге я вообще без понятия где теперь искать проблему ;D P.S. Твой метод из ядра D7 я пробовал, неплохо так, но мои эксперименты показывают, что тут ведь явно проблема не в том, как отдавать заголовок, через метод ядра D7 или простой header(..
Провел небольшие эксперименты с "костыльной" выдачей заголовка last-modified, создал тестовую страничку в корне в 3-ех вариациях: №1
Цитата
header('Last-Modified: '.gmdate('D, d M Y H:i:s'). ' GMT');
№2
Цитата
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); header('Last-Modified: '.gmdate('D, d M Y H:i:s'). ' GMT');
№3
Цитата
require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/include/prolog_before.php"); header('Last-Modified: '.gmdate('D, d M Y H:i:s'). ' GMT');
№1 и №3 Заголовок отдают, а вот №2 - нет. В каком направлений искать причину?)
Вообщем, пошаманил над кодом, вышел такой результат: Локальный битрикс на апаче
Цитата
Cache-Control: public Connection: Keep-Alive Content-Encoding: gzip Content-Length: 1623 Content-Type: text/html; charset=UTF-8 Date: Wed, 18 Mar 2020 06:39:13 GMT Expires: Thu, 19 Nov 1981 08:52:00 GMT Keep-Alive: timeout=10, max=99 Last-Modified: Wed, 18 Mar 2020 06:31:55 GMT P3P: policyref="/bitrix/p3p.xml", CP="NON DSP COR CUR ADM DEV PSA PSD OUR UNR BUS UNI COM NAV INT DEM STA" Pragma: no-cache Server: Apache X-Powered-CMS: Bitrix Site Manager (DEMO)
Результат на битриксе, на котором необходимо решить задачу
Цитата
cache-control: no-store, no-cache, must-revalidate content-encoding: gzip content-type: text/html; charset=UTF-8 date: Wed, 18 Mar 2020 06:37:35 GMT expires: Thu, 19 Nov 1981 08:52:00 GMT p3p: policyref="/bitrix/p3p.xml", CP="NON DSP COR CUR ADM DEV PSA PSD OUR UNR BUS UNI COM NAV INT DEM STA" pragma: no-cache server: nginx status: 200 strict-transport-security: max-age=31536000; x-powered-by: PHP/7.0.30 x-powered-cms: Bitrix Site Manager
Заголовка last-modified я не увидел, однако хостер говорит, мол у них nginx настроен как надо для выдачи заголовка
Цитата
На услугах виртуального хостинга, доступа к конфигурационным файлам веб-серверов нет. Со стороны веб-серверов все необходимые настройки для возможности передачи заголовков Last-Modified включены.
Настройка указанных заголовков производиться непосредственно в скриптах сайта.
Так в чем же причина? Да, кстати, код получился таким:
header('Last-Modified: '.gmdate('D, d M Y H:i:s'). ' GMT');
P.S. Хотя все же костылем (строка выше) на локалке заголовок получил, однако костыль не нужен
Если на сервере с сайтом используется nginx, проверьте, выключен ли параметр ssi в его конфигах к вашему сайту и проверьте снова, стали ли устанавливаться заголовки
Сайт на shared-хостинги, писал в тп хостинга - ответили мол у них все как надо настроено. На локалке апач - и там только вот костыль отдает заголовок)
Константин написал: Спасибо за ответ, но там нет того что нужно. Откуда то подгружает. Знать бы откуда.
Не знаю почему, но мое сообщение куда-то пропало Воспользуйся кнопкой "изменить страницу" в админ панели, открой режим исходного кода и попробуй найти там свою "искомую надпись".
Такую проблему я решил хаотичным набором действий:
Код
upd. пересохранил файл в utf-8 без bom - хоть это изначально не помогло, авторизировался с переименованным init, переименовал его назад - вышел и все последующие авторизации стали нормально проходить, пока что нормально. Вроде как проблема решена,
Хотя, вроде в /bitrix/php_interface/init.php есть всегда - по-крайней мере мне так казалось, не знаю почему у вас его нет. Можете глянуть ошибки в консоли браузера - у меня вроде высвечивались какие-то при такой проблеме.
Не совсем правильный способ убрать рамку, однако рабочий, можете вставить этот код в файл, который вы прикрепляли к теме. Рамка убирается на всех слайдах. P.S. Когда вставите код, уберите пробел между 'st' и 'yle'
Михаил Титков написал: Я имел в виду вообще убрать, удалить строки из файла, но если боитесь потерять, можете закомментировать для этого в начале строки напишите "<!--" и в конце строки "-->" если не поможет, или уберёт лишнего, верните как было и да, ищите в css файлах свои элементы
Благодарю! Удалось избавиться от части ненужного и выяснить что за рамку отвечают вот эти две строчки:
define('IBLOCK_SEO',ИД_ВАШЕГО_СОЗДАННОГО_ИНФОБЛОКА) - примерно так, однако рекомендую создать init.php в site/local/php_interface/ и в нем проводить работы.
да, спасибо. я так и сделал, все заработало. только init.php не создавал в /local/ пока не конца разобрался с папкой local
define('IBLOCK_SEO',ИД_ВАШЕГО_СОЗДАННОГО_ИНФОБЛОКА) - примерно так, однако рекомендую создать init.php в site/local/php_interface/ и в нем проводить работы.
Тему можно закрывать, в тп яндекс маркета дали ответ по данному вопросу.
Код
Данная информация была получена во время проведения проверки. Для того, чтобы избежать ее появления в дальнейшем, рекомендуем сообщать по телефону гарантию в 1 год, вместе 14 дней, которые предусмотрены для возврата товара.
Юрий Юферов написал: А товар имеет маркете свою карточку товара от вендора? Может там гарантия есть и поэтому не совпадает? Может дело в manufacturer_warranty? Но лично я ни разу с этим не сталкивался.
Ну, бренд у этого товара как свойство пустое, оно лишь фигурирует в его названий. Про "карточку товара от вендора" - пожалуйста подробнее, где такое смотреть?
Стоит вопрос выгрузки магазина на яндекс маркет. Установил офф модуль от яндекса для составления прайс листа (simple), все выгрузили, отправили на модерацию. Модерация ответила - проблемы с гарантией.
Код
Такой-то товар у вас продается с гарантией 14 дней, а его производитель представляет с гарантией 1 год.
Вопрос - этот вопрос регулируется со стороны битрикса? В торговых предложениях ничего не нашел, да и в гугле по запросу = "проблемы с гарантией товара битрикс" ничего толком не выходит. Интернет-магазин синхронизирован с 1С насколько я знаю.