Eu quero migrar o site antigo (php 5.6) do Debian 8.10 para o servidor Ubuntu 16.04.3.
A configuração do apache foi exportada no novo servidor e o banco de dados mysql está hospedado em outro servidor: sem alteração.
Após a migração, os caracteres de acentos do banco de dados são exibidos como estão: 'Ã ©'. O problema aparece apenas para dados no banco de dados.
Esses caracteres são exibidos também como no banco de dados, mas no site antigo, são exibidos corretamente no navegador da Web.
O banco de dados é mariaDB 10.0.31 e o agrupamento: latin1.
Eu não posso tocar no banco de dados e no código php.
As configurações do PHP / apache são as mesmas. Juste o sistema hospedado é diferente. Por que os personagens são interpretados de forma diferente?
Eu tentei na configuração do vhost estas opções: CharsetDefault UTF-8 AddDefaultCharset UTF-8 AddCharset UTF-8 .utf8
Eu também tentei mudar de localidade: en_US.UTF-8 fr_FR.UTF-8
Mas nenhum efeito de alteração ...
Alguma ideia?
Obrigado pela sua ajuda!
Configuração antiga: PHP 5.6.30-0 + deb8u1 Apache / 2.4.10 Debian 8.10
Nova configuração: PHP 5.6.32-1 + ubuntu16.04.1 + deb.sury.org + 2 Apache / 2.4.18 Ubuntu 16.04.3
Host virtual:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www-HIDDEN
ServerName yyy.HIDDEN.fr
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
<Directory /var/HIDDEN/>
AllowOverride All
Options Indexes FollowSymLinks
Require all granted
Order allow,deny
allow from all
</Directory>
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_flag register_globals Off
php_value include_path .
</IfModule>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Localidade no novo servidor:
root@ubuntu16:~# locale
LANG=fr_FR.UTF-8
LANGUAGE=
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=
Localidade no servidor antigo:
root@debian8:~# locale
LANG=fr_FR.UTF-8
LANGUAGE=
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=
Mas, mesmo problema com este valor: en_US.UTF-8