Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/04/2018, à 08:10

Claude LENDREVIE

Problème avec un site en développement

Config : Ubuntu 16.04 lts

Alors que je développe un site en local sur mon pc depuis plusieurs mois et sans le moindre souci, je découvre ce matin l'impossibilité totale :

1. d'accéder au front-end de mon site local : commande dans mon navigateur "localhost/mon_site",
2. d'accéder au back-end de mon site local : commande dans mon navigateur "localhost/mon_site/administrator".

Pour chacune de ces commandes, j'obtiens le message d'erreur suivant :

Erreur d’encodage de contenu

La page que vous essayez de voir ne peut être affichée car elle utilise un type de compression invalide ou non pris en charge.

    Veuillez contacter les propriétaires du site web pour les informer de ce problème.  Réessayer

Quand j'utilise le bouton "Réessayer", je n'obtiens aucun résultat positif.

Comment sortir de ce mauvais pas ?

ps : je n'ai strictement rien changé récemment dans l'encodage ou la compression de mon site. Et le même site placé sous une seconde partition de mon disque dur en 12.04 lts fonctionne à merveille.

Dernière modification par Claude LENDREVIE (Le 17/04/2018, à 11:07)

Hors ligne

#2 Le 17/04/2018, à 11:47

shoot76

Re : Problème avec un site en développement

T'as un problème d'encodage basique.

Faudrait que tu édites ton php.ini pour y ajouter ceci :

default_charset = "utf-8"

Et enregistrer tous les fichiers de ton site en encodage "unicode". Ils doivent être actuellement en latin1 je suppose.

Si ça fonctionne sur 12.04, c'est juste que tu dois avoir une version précédent de navigateur ou de PHP ou Apache qui gère ça dans la config par défaut ce que fait pas ta version actuelle.

Dans tous les cas, il te faut changer cela; Le latin1 en Français n'est pas utilisable. Si tu as des caractères accentués par exemple, c'est normal que ça marche pas.

Pour tester, tu peux essayer de faire une simple page sans caractère spéciaux. Juste un "Hello world" par exemple. Et essayer de la charger. Si ça fonctionne, c'est bien qu'il te faut modifier l'encodage de tous tes fichiers et de PHP.

Tu peux aussi essayer d'ajouter la balise

<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />

à ton <head></head> pour forcer le navigateur à interpréter les caractères unicode.

Bon courage smile

Dernière modification par shoot76 (Le 17/04/2018, à 11:48)


~ Data-sientist freelance : https://skulder.fr

Hors ligne

#3 Le 17/04/2018, à 11:51

Claude LENDREVIE

Re : Problème avec un site en développement

Grand merci shoot76. En espérant vivement que tu aies raison. Mais pourquoi ce blocage soudain ?

Hors ligne

#4 Le 17/04/2018, à 12:00

shoot76

Re : Problème avec un site en développement

En soit, t'aurais du l'avoir aussi sous 12.04.

Je pense que ton PHP sous 12.04 était configuré en unicode de base (ou alors t'avais rajouté un truc et tu t'en souviens plus) et pas le PHP sous 16.04. Ca peut pas venir d'autre chose si ça fonctionnait avant smile

J'ai eu un souci similaire sur un projet en C quand j'étais en école d'ingé. J'y ai passé des soirées et nuits entières pour au final trouver que c'était juste mon fichier qui était pas enregistré dans le bon encodage. C'est frustrant. Mais après tu fais gaffe.

Maintenant, j'utilise des éditeurs de code qui enregistrent directement en unicode et j'ai plus jamais eu aucun souci. Faut juste y faire attention smile

Mais t'inquiètes, je pense que ça doit arriver à tout le monde. Du moins tous ceux qui ont déjà fait du code smile


~ Data-sientist freelance : https://skulder.fr

Hors ligne

#5 Le 17/04/2018, à 13:14

Claude LENDREVIE

Re : Problème avec un site en développement

1. le fichier "php.ini" dans le php7 de mon serveur Apache2 est déjà pourvu de l'instruction : default_charset = "utf-8"
2. quand tu me parles de fichier "php.ini", peut-être entends-tu celui de la configuration de mon CMS (cf. Joomla) donc de mon site ?
3. dans le fichier "index.html" du template de mon site, j'ai donc ajouté la balise html : <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />. Je peux maintenant lancer mon site en front-end, il fonctionne à nouveau ... mais je récupère à l'affichage des hiéroglyphes pour tout caractère accentué français !
4. ... et ceci ne débloque pas l'accès à mon back-end de site (administration du site) !!!

Hors ligne

#6 Le 17/04/2018, à 14:12

shoot76

Re : Problème avec un site en développement

Claude LENDREVIE a écrit :

1. le fichier "php.ini" dans le php7 de mon serveur Apache2 est déjà pourvu de l'instruction : default_charset = "utf-8"
2. quand tu me parles de fichier "php.ini", peut-être entends-tu celui de la configuration de mon CMS (cf. Joomla) donc de mon site ?
3. dans le fichier "index.html" du template de mon site, j'ai donc ajouté la balise html : <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />. Je peux maintenant lancer mon site en front-end, il fonctionne à nouveau ... mais je récupère à l'affichage des hiéroglyphes pour tout caractère accentué français !
4. ... et ceci ne débloque pas l'accès à mon back-end de site (administration du site) !!!

1. Oui je parlais bien de celui-ci
2. Je ne connais pas Joomla, peut être est-il nécessaire de l'ajouter. En tous les cas, ça ne fera pas de mal.
3. C'est normal, car tu indiques à ton navigateur d'interpréter des caractères en unicode alors qu'ils ne le sont pas dans tes fichiers. C'était juste pour t'éviter le message d'erreur mais ça ne soigne en rien la cause. Il te faut modifier l'encodage de tes fichiers PHP pour être en unicode.
4. Ton backend a le même problème que ton front. Il te faut répéter l'opération dans ce cas


~ Data-sientist freelance : https://skulder.fr

Hors ligne

#7 Le 17/04/2018, à 14:19

Claude LENDREVIE

Re : Problème avec un site en développement

shoot76 a écrit :

4. Ton backend a le même problème que ton front. Il te faut répéter l'opération dans ce cas

Bien volontiers, mais je ne vois vraiment pas où je pourrais intervenir. J'ai déjà placé un fichier php.ini à la racine de mon site, et ceci ne débloque pas l'accès à l'administration du site.

Hors ligne

#8 Le 17/04/2018, à 14:26

shoot76

Re : Problème avec un site en développement

PHP.ini c'est pour PHP, pas pour ton site. Le mettre à la racine ne changera rien. Il te faut configurer php directement ce que tu sembles avoir fait.

Il ne te reste plus qu'à essayer de changer l'encodage de tes fichiers. C'est ça le vrai noeud du problème.


~ Data-sientist freelance : https://skulder.fr

Hors ligne

#9 Le 17/04/2018, à 14:57

Claude LENDREVIE

Re : Problème avec un site en développement

shoot76 a écrit :

PHP.ini c'est pour PHP, pas pour ton site. Le mettre à la racine ne changera rien. Il te faut configurer php directement ce que tu sembles avoir fait.

Il ne te reste plus qu'à essayer de changer l'encodage de tes fichiers. C'est ça le vrai noeud du problème.

Aïe ! J'ai bien du mal à te comprendre.
Si j'étudie les fichiers php de l'administration de mon site avec un éditeur de script tel que "geany", je constate qu'ils sont bien écrits en Unicode (UTF-8). Ce qui me semble bien normal.
Donc, à mon humble avis, le problème de non accès à l'administration pourrait se trouver ailleurs !

Hors ligne

#10 Le 17/04/2018, à 15:02

shoot76

Re : Problème avec un site en développement

Très bien.

Je comprends pas ton architecture. Ton backend a une interface HTML ou pas? Si tel est le cas, est-ce que tu as ajouté la balise donnée plus haut également ?

Tu peux essayer avec une balise UTF8 également. Voir si ça aide pour les accents. C'est possible.

Après je suis pas expert PHP. Si jamais ça touche au code en lui même, je pourrais pas t'aider. Mais aucune raison que ça soit ça vu que ça marche ailleurs.


~ Data-sientist freelance : https://skulder.fr

Hors ligne

#11 Le 17/04/2018, à 15:47

Claude LENDREVIE

Re : Problème avec un site en développement

shoot76 a écrit :

Très bien.

Je comprends pas ton architecture. Ton backend a une interface HTML ou pas? Si tel est le cas, est-ce que tu as ajouté la balise donnée plus haut également ?

Tu peux essayer avec une balise UTF8 également. Voir si ça aide pour les accents. C'est possible.

Après je suis pas expert PHP. Si jamais ça touche au code en lui même, je pourrais pas t'aider. Mais aucune raison que ça soit ça vu que ça marche ailleurs.

Je vais encore chercher. Et je te remercie pour ton aide et tes efforts. Amitiés.

Hors ligne