Bug sur le nom des fichiers

Venez discuter ici des anciennes revues informatiques.

Modérateurs : XavierSnp, Soily, Princeps.Bonus, Fred_G, retro_lover

Répondre
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Bug sur le nom des fichiers

Message non lu par Fredo_L »

Le site des magazines propose normalement de visualiser les pages des magazines mais cette option ne fonctionne plus pour les fichiers ayant des caractères spéciaux.

Je pense un serveur pour l'hébergement des sites.
J'ai un autre serveur pour les fichiers des magazines.

Sur le serveur du site, je me suis fait une page de test qui donne de bons résultats.
https://abandonware-magazines.org/test/

J'ai copié ces mêmes fichiers sur le serveur qui héberge les fichiers (dans le dossier magazines) et le script fonctionne également.
http://download.abandonware.org/magazines/test/
http://download.abandonware.org/magazin ... tion%20PC/

En revanche, cela ne fonctionne plus dans les dossiers magazines
http://download.abandonware.org/magazin ... 20PC/test/

Si quelqu'un a une idée à proposer, je suis preneur !
Merci d'avance.
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

Je vais essayer de passer en PHP 7.4 sur le serveur de stockage.
Ainsi, les 2 serveurs auront la même configuration.

Edit : PHP 7.4 installé mais cela ne change rien.
Avatar du membre
XavierSnp
Legendary
Messages : 749
Enregistré le : 22-02-2012 08:00
Contact :

Re: Bug sur le nom des fichiers

Message non lu par XavierSnp »

Donc, ton serveur est en codage caractère Windows 1252 et ta liste texte en UTF8.
Convertis ta liste en Windows 1252 et tu le lis en rawurlencode().

Avec "EditPlus", tu charges ta liste de fichiers,"Document/encoding type/plaintext", puis tu sauvegarde.
Tu uploades ton fichier texte sur le serveur, et ça va marcher.
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

Je ne pense pas que ce soit cela (ou alors, je n'ai pas bien compris ton message).

Comme je le disais plus haut, le serveur est en UTC-8. En revanche, pour une raison que je ne comprends pas, des dossiers ne le sont pas. L'ancien serveur n'était pas en UTC-8 et je me demande si le transfert des dossiers entre les 2 serveurs n'aurait pas conservé cette configuration.

Edit : Un truc bizarre vient de se produire.
J'ai donc créé sur le serveur qui héberge les fichiers des magazines des dossiers de tests. Dans ces dossiers, les fichiers ont été mystérieusement renommés.

Je montre ce que m'affiche le dossier avec Winscp.
Et ce que m'affiche la page Internet.
bug1.png
bug2.png
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

J'ai visiblement un problème avec les variables locales de mon serveur.

Au lieu d'avoir
export LANG=fr_FR.UTF-8
export LANGUAGE=
export LC_CTYPE="fr_FR.UTF-8"
export LC_NUMERIC="fr_FR.UTF-8"
export LC_TIME="fr_FR.UTF-8"
export LC_COLLATE="fr_FR.UTF-8"
export LC_MONETARY="fr_FR.UTF-8"
export LC_MESSAGES="fr_FR.UTF-8"
export LC_PAPER="fr_FR.UTF-8"
export LC_NAME="fr_FR.UTF-8"
export LC_ADDRESS="fr_FR.UTF-8"
export LC_TELEPHONE="fr_FR.UTF-8"
export LC_MEASUREMENT="fr_FR.UTF-8"
export LC_IDENTIFICATION="fr_FR.UTF-8"
export LC_ALL=

J'ai la même chose mais avec "C".
LANG=C
LANGUAGE=C
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=C

J'ai fait des modifications mais quand je fais un reboot du serveur, mes modifications disparaissent.

J'ai posé la question sur le forum OVH https://community.ovh.com/t/debian-9-ch ... ngue/28916

Edit : Problème résolu :)
Avatar du membre
XavierSnp
Legendary
Messages : 749
Enregistré le : 22-02-2012 08:00
Contact :

Re: Bug sur le nom des fichiers

Message non lu par XavierSnp »

Donc, selon toi, le programme d'upload à envoyé des noms en Windows 1252(un "é" codé sur un caractère: %E9), et le script demande de l'UTF-8, codé en deux caractères (é %C3 %A9).

C'est le nombre de caractère symbolisé par le "?" dans le losange noir.
En UTF8, les symboles sont visibles, mais pas en %C9.

Le problème, c'est que soit tu changes les noms sur le serveur, et là ça fait des tonnes de fichiers à renommer…
Soit tu reuploades tous les fichiers, et ça fait des heurs de téléchargement.
Le problème, c'est que la configuration du serveur prend effet au moment du changement, et pour tous les fichiers envoyés après.
Tous les fichiers antérieurs garderont l'encodage d'origine, car action non rétroactive.

Autre problème, si tu reuploades les fichiers, tu auras un doublon pour chaque fichier, car le nom n'est pas identique !
Il va s'appliquer que sur les fichiers entrants.

:wc:

L'avantage c'est que tes ajouts futurs seront compatibles en UTF8, mais pas les fichiers archivés.
Il faudrait forcer la conversion de l'encodage des URLs au niveau serveur…
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

Merci.

Sur le serveur, j'ai lancé la commande convmv -r -f iso-8859-1 -t UTF-8 --notest . et cela a résolu le problème.

L'origine du problème était donc bien que les noms de certains fichiers étaient en ISO-8859-1 au lieu de UTF-8.

Cela m'a pris un peu de temps mais je suis content d'avoir réussi à résoudre ce bug qui m'empoisonnait depuis trop longtemps.
Avatar du membre
XavierSnp
Legendary
Messages : 749
Enregistré le : 22-02-2012 08:00
Contact :

Re: Bug sur le nom des fichiers

Message non lu par XavierSnp »

Bravo Fred !
T'es un Chef...
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

A présent que tous les sites sont en PHP 7.4 et que tout est en UTC-8, cela devrait réduire grandement le nombre de problèmes sur les sites. C'est une bonne chose de faite :)

Je suis loin d'être aussi bon que je le souhaiterai en administration Linux et en programmation PHP, et donc, si j'y suis arrivé, c'est également grâce à tous ceux qui m'ont apporté leur aide.
Hoagie
Legendary
Messages : 164
Enregistré le : 10-12-2008 17:28
Localisation : Puteaux (92)

Re: Bug sur le nom des fichiers

Message non lu par Hoagie »

Bravo !
Toutefois, il y a encore des soucis avec le signe "°" (voir par exemple les Tilt de 1993).
Image
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

Oui, j'ai également pu voir que pour certains fichiers, ce n'était pas encore totalement bon.

Pour faire un résumé :
- Les 2 serveurs ont un système de fichiers en UTC-8 ==> OK
- Les noms des fichiers sont correctement codes en UTC8 ==> OK
- Les fichiers textes donnant le nom des fichiers sont en UTC-8 ==> Mauvais

Le problème est donc que le fichier texte qui contient le nom des fichiers n'est pas codé en UTC-8. Heureusement, c'est assez rapide à corriger.
Pour voir un exemple de fichier texte avec un mauvais codage : https://abandonware-magazines.org/image ... ero119.txt

Ce qui serait top, c'est d'avoir un script qui détecte automatiquement les fichiers texte en ISO pour les convertir en UTC-8 mais je n'ai pas trouvé.

Je suppose que progressivement, ces problèmes seront corrigés au fur et à mesure que l'on me signalera des problèmes.
Avatar du membre
XavierSnp
Legendary
Messages : 749
Enregistré le : 22-02-2012 08:00
Contact :

Re: Bug sur le nom des fichiers

Message non lu par XavierSnp »

Salut,
Pour moi, c'est de l'UTF-8.
Téléchargement du fichier as is…

Original:
test-utf8.JPG
Converti:
test-utf8b.JPG
(Dans le script, ne pas utiliser le mode RAW)

Nb: viewtopic.php?p=37150#p37150
Si tu as Windows…
S'utilise en drag&drop, mode fenêtré et en mode multi-dossiers (dans la version plus récente 2UTF8b.zip).
Téléchargement: http://dskcenter.free.fr/2UTF/
DLL a installer : http://fetrmartin.free.fr/Download/DskCenter_Dll.zip
… avant de le lancer sur les Windows de 95 à 10.
Modifié en dernier par XavierSnp le 18-05-2020 02:28, modifié 1 fois.
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

Oui, tu as raison, c'est bien du UTC-8 mais c'est lié au fait que j'ai justement fait la conversion après avoir posté le lien :)

Le fichier de départ avec l'encodage latin était le suivant : https://abandonware-magazines.org/image ... auvais.txt
Le nouveau fichier en UTC-8 est consultable ici : https://abandonware-magazines.org/image ... ro119c.txt

Dans l'idéal, il me faudrait un logiciel qui serait capable de lire tous les fichiers textes pour trouver ceux qui n'ont pas l'encodage utc-8.
Avatar du membre
XavierSnp
Legendary
Messages : 749
Enregistré le : 22-02-2012 08:00
Contact :

Re: Bug sur le nom des fichiers

Message non lu par XavierSnp »

:lol:
Laisse tomber mon programme…

:shock:
Là je ne comprend plus… tu n'as pas mis à jour les fichiers que je t'ai envoyé…

Après… pour chaque programme ajouté, il y aura ce problème.
-Pb nom serveur.
-Pb format du fichier texte pour le script.

Mieux vaut renommer les noms de fichier à la source, sans accentuations.
Avatar du membre
Fredo_L
Scientifique dans l'âme !
Messages : 6880
Enregistré le : 26-12-2001 13:02
Localisation : Paris
Contact :

Re: Bug sur le nom des fichiers

Message non lu par Fredo_L »

XavierSnp a écrit : 18-05-2020 03:41 :lol:
Laisse tomber mon programme…

:shock:
Là je ne comprend plus… tu n'as pas mis à jour les fichiers que je t'ai envoyé…

Après… pour chaque programme ajouté, il y aura ce problème.
-Pb nom serveur.
-Pb format du fichier texte pour le script.

Mieux vaut renommer les noms de fichier à la source, sans accentuations.
Oui, j'ai mis à jour les fichiers que tu m'avais envoyés.
Si tu as encore une copie des fichiers que tu m'avais renvoyés, regarde les fichiers suivants :
/Tilt/tilt_numero119c.txt
/Tilt/tilt_numero117.txt
/Tilt/tilt_numero116.txt
/Tilt/tilt_numero112.txt
J'ai l'impression qu'ils n'avaient pas été convertis en UTC-8.

Je ne suis pas particulièrement inquiet car je pense que progressivement, le problème va se régler au fur et à mesure que l'on me fera des signalements.
Avatar du membre
XavierSnp
Legendary
Messages : 749
Enregistré le : 22-02-2012 08:00
Contact :

Re: Bug sur le nom des fichiers

Message non lu par XavierSnp »

Non, c'est bon.
Le problème est ailleurs.

:shock:

Sur mon serveur, le nom d'un fichier n'accepte qu'un espace en tout !
"Hello world.txt" fonctionne.
Pas "Hello world 1.txt" ou "Hello world.txt" (doubles espaces) !

Il est comme protégé en lecture via le web (privatif/non trouvé), mais peut-être téléchargé en upload via le FTP.
Donc, les espaces et doubles espaces sont à proscrire !

:?

Renomme ton fichier sans espaces, change le nom dans le fichier texte, et ton caractère "°" sera (peut-être) reconnu.

En même temps, le nom "TILT 107 (Novembre 1992) - Page 001.jpg" avec des espaces fonctionne, mais ne possède pas de caractères spéciaux.
Répondre