smilingcheater, кстати, переключение на imagick не помогло. картинки совсем перестали ресайзиться.
Причём попробовал сам опубликовать фото с телефона в разных ориентациях - фотки ресайзятся корректно. У меня Android, а пользователи, у которых возникла эта проблема, пользуются, по всей видимости, iPhone.
Значит, проблема, вероятно, даже и не в битриксе, а в способе записи мета-данных разными моделями телефонов.
smilingcheater,
joxi.ru/52aeDYRHEooE32 - одна из таких картинок (ссылкой вставить не получается)
Если открыть её в браузере, видно, как она подгружается влево (хотя обычно грузятся сверху вниз)
smilingcheater, Добрый день.
1. Да, картинки в JPG. Загружаются напрямую с телефонов (т.е. нажимаешь загрузить, открывается дефолтный интерфейс выбора из галереи телефона или сделать фото), чаще всего делаются фото "на лету" и загружаются.
2. Версия битрикса 20.5, сайт собран в конце 2020 г.
3. Сайт на хостинге nic.ru, сервер Apache, PHP 7.4
4. Установлен gd
5. Никаких сторонних модулей не установлено. Чистая сборка битрикс, без каких-либо модулей с маркетплейса.
1С-Битрикс: Управление сайтом 20.5.393
Авторизация без AJAX-а. Форма с кодом, полученным по смс, отправляется этому же скрипту. Он проверяет наличие переменной кода в $_POST, если она есть и код верный, вызывает $USER->Authorize . Далее идёт header("Location: ............") на нужную страницу, в зависимости от роли авторизованного пользователя. Повторюсь, точно такой же процесс работает на старой версии сайта, работающей на bitrix 14 версии (вроде)
Илья, Илья, я разобрался. Я уже выше подробно описал причину. Вторая часть моей проблемы состояла в том, что на nic.ru с недавнего времени настройки mbstring задаются глобально для всего сервера. Пообщавшись с техподдержкой, узнал, что можно выключить "Автоматический" режим работы сайтов (на nic.ru есть такая настройка), и потом можно задавать локальные параметры через .htaccess.
Собственно, это всё поставило на свои места. DOMDocument недостаточно гибок и, в моём случае, не справился с необходимыми задачами. По скорости, очевидно, он выигрывает у Simple HTML DOM. В моей ситуации скорость совсем не важна.
Илья, теперь бы еще понять, как обойти жёсткую фиксацию значения mbstring.func_overload, которое на хостинге nic.ru можно задать только в панели хостинга и для всего сайта разом. Раньше можно было переопределять в локальных .htaccess, а с недавнего времени (с момента, как всё поломалось), видимо, нельзя.
По крайней мере, ни установка параметра в локальном .htaccess, ни установка ini_set(...) не помогают :(
Будем искать решение!
Спасибо вам!
Илья, вы совершенно правы. Сегодня докопался до истины.
У меня сайт на битриксе, и в настройках модуля mbstring значение func_overload = 2.
А для корректной работы Simple HTML DOM нужно значение 0.
Вот и вся беда.
С включенным отображением ошибок всё равно пустота.
Сегодня (на свежую голову) всё-таки разобрался.
Проблема, как оказалось, в настройках php. В частности, для корректной работы Simple HTML DOM параметр mbstring.func_overload должен быть равен 0. А у меня сайт на битриксе и ему нужно значение 2.
Хостер (nic.ru) с недавнего времени решил заблокировать возможность перезаписи этого параметра в локальных файлах .htaccess. Теперь параметр задаётся для всего сервера в настройках сайта (в панели хостинга) и повлиять на него нельзя никак.
В общем, такая вот, ситуация. Главное, причина найдена. Дальше разберемся.
Спасибо за участие!!!