SiteMix Опубликовано 25.04.2023 в 16:56 Поделиться Опубликовано 25.04.2023 в 16:56 (изменено) В 25.04.2023 в 19:39, mpn2005 сказал: Да брешет же. Не поможет это, судя по коду. Надо смотреть заголовки, скорее всего в настройках сервера явно не указана кодировка UTF-8. На локальном сервере в файле my.ini так: character-set-server = utf8 В файле httpd.conf заменил строку AddDefaultCharset windows-1251 на AddDefaultCharset utf-8 И таки, да, это помогло! А как-то можно решить без учёта настроек сервера? Вставить тот же encodeURIComponent в нужное место? Ведь на хостинге файлы править не получится... Изменено 25.04.2023 в 17:05 пользователем SiteMix 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
mpn2005 Опубликовано 25.04.2023 в 17:08 Автор Поделиться Опубликовано 25.04.2023 в 17:08 В 25.04.2023 в 19:56, SiteMix сказал: А как-то можно решить без учёта настроек сервера? Вставить тот же encodeURIComponent в нужное место? Ведь на хостинге файлы править не получится... Нет. Если проблема на сервере, то хоть вывернись на изнанку уже не поправить ничего. Ответ уже приходит искажённый. В 25.04.2023 в 19:56, SiteMix сказал: Ведь на хостинге файлы править не получится... На хостинге обычно linux и там не будет cp1251. 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Otvet Опубликовано 25.04.2023 в 17:50 Поделиться Опубликовано 25.04.2023 в 17:50 addHeader('Content-Type: text/html; charset=UTF-8'); 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ChatGPT Опубликовано 25.04.2023 в 17:51 Поделиться Опубликовано 25.04.2023 в 17:51 В 25.04.2023 в 17:50, Otvet сказал: addHeader('Content-Type: text/html; charset=UTF-8'); This code is used to inform the browser that the type of content being sent is HTML and the character encoding used is UTF-8. The header is added to the HTTP response that is sent back to the client. The purpose of specifying the character encoding is to ensure that non-ASCII characters are properly encoded and displayed in the browser. 0 Цитата Сборка OpenCart club edition | Документация OpenCart | Условия соглашения | Лицензионное соглашение Ссылка на комментарий Поделиться на другие сайты Поделиться
mpn2005 Опубликовано 25.04.2023 в 18:11 Автор Поделиться Опубликовано 25.04.2023 в 18:11 В 25.04.2023 в 21:50, Otvet сказал: addHeader('Content-Type: text/html; charset=UTF-8'); Так это опять же на сервере. И если у сервера настроена отдача в cp1251, то опять всё побьёт. Исходно должен быть нормально настроен сервер. Если там настроено абы что, то уже ничего не поможет. 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
SiteMix Опубликовано 26.04.2023 в 06:53 Поделиться Опубликовано 26.04.2023 в 06:53 Погуглил насчёт addHeader и нашёл альтернативный вариант через .htaccess - AddDefaultCharset UTF-8 На пробу откатил изменения сделанные ранее в конфиге локального сервера (с перезапуском) и добавил строку в .htaccess. Сработал и этот вариант. Возможно, и на хостинге сработает в случае чего... @mpn2005, @Otvet , спасибо за подсказки! 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
mpn2005 Опубликовано 26.04.2023 в 11:58 Автор Поделиться Опубликовано 26.04.2023 в 11:58 Как указать кодировку ответа сервера для Apache2? 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
mpn2005 Опубликовано 26.04.2023 в 11:58 Автор Поделиться Опубликовано 26.04.2023 в 11:58 Как указать кодировку ответа сервера для nginx php-fpm? 0 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ChatGPT Опубликовано 26.04.2023 в 11:59 Поделиться Опубликовано 26.04.2023 в 11:59 В 26.04.2023 в 11:58, mpn2005 сказал: Как указать кодировку ответа сервера для Apache2? Чтобы указать кодировку ответа сервера для Apache2, необходимо добавить следующую строку в файл конфигурации Apache2 (httpd.conf или apache2.conf): AddDefaultCharset utf-8 где "utf-8" - кодировка, которую Вы хотите использовать. После добавления этой строки необходимо перезапустить сервер Apache2. 0 Цитата Сборка OpenCart club edition | Документация OpenCart | Условия соглашения | Лицензионное соглашение Ссылка на комментарий Поделиться на другие сайты Поделиться
ChatGPT Опубликовано 26.04.2023 в 11:59 Поделиться Опубликовано 26.04.2023 в 11:59 В 26.04.2023 в 11:58, mpn2005 сказал: Как указать кодировку ответа сервера для nginx php-fpm? Для задания кодировки ответа сервера в Nginx с PHP-FPM необходимо добавить следующую строку в каталог location в конфигурационном файле Nginx: add_header Content-Type "text/html; charset=utf-8"; Например, если вы хотите установить кодировку UTF-8 для всех страниц, то вам нужно добавить эту строку в блок location / в файле конфигурации Nginx: server { listen 80; server_name yourdomain.com; index index.php; root /var/www/yourdomain.com; location / { try_files $uri $uri/ /index.php?$query_string; add_header Content-Type "text/html; charset=utf-8"; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } После внесения изменений сохраните конфигурационный файл и перезапустите Nginx, чтобы изменения вступили в силу. 0 Цитата Сборка OpenCart club edition | Документация OpenCart | Условия соглашения | Лицензионное соглашение Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.