cerhu > comp.divers.* > comp.infosystemes.www.serveurs

Benoit (03/06/2017, 12h21)
Bonjour,

J'ai un site web de photos et je viens de renommer des images en
remplaçant 1234.jpeg par prenom_ville.jpeg.

Le serveur gère les erreurs 404 en renvoyant sur la home page. Si une
image n'existe pas/plus, ce que je souhaiterai c'est que soit renvoyé
sur :

- Le index.html du dossier dans laquelle elle se trouvait ;
ou
- L'image avec le nouveau nom.

J'ai essayé, veinenement, de rédiger un fichier .htaccess mais c'est
toujours la home page qui s'affiche.

Exemple de contenus de .htaccess situé dans le dossier Afrique :

ErrorDocument 404 /index.html
ErrorDocument 404 photo/paris/tout_le_Monde/Afrique/index.html
ErrorDocument 404
[..]

Rien ne renvoie sur cette page index.html

L'idéal serait de renvoyer vers le fichier avec le nouveau nom, mais là,
même si Olivier m'a fait découvrir le concept d'Alias, je suis perdu.
Comment se nomme le fichier, où je le mets...

HTTP/1.1 200 OK
Date: Sat, 03 Jun 2017 09:25:07 GMT
Server: Apache/2.0.47 (Unix) DAV/2 PHP/5.0.4
Last-Modified: Tue, 24 Jan 2017 16:20:17 GMT
ETag: "54155f-13a-7ddc7240"
Accept-Ranges: bytes
Content-Length: 314
Content-Type: text/html

D'avance merci,

FU2 vers le newsgroup le plus approprié selon vous.
Benoit (03/06/2017, 12h46)
Benoit <benoit> wrote:

[..]
> ETag: "54155f-13a-7ddc7240"
> Accept-Ranges: bytes
> Content-Length: 314
> Content-Type: text/html
>> D'avance merci,
>> FU2 vers le newsgroup le plus approprié selon vous.


Déjà une première chose : les fichiers .htaccess que je dépose sont
supprimés par le serveur, il ne les affiche pas dans le dossier.
J'attends des infos de la part de mon hébergeur.
Nicolas George (04/06/2017, 12h02)
Benoit, dans le message <1n71kqx.eiue0h1sscb5lN%benoit>, a
écrit :
> J'ai un site web de photos et je viens de renommer des images en
> remplaçant 1234.jpeg par prenom_ville.jpeg.
> Le serveur gère les erreurs 404 en renvoyant sur la home page. Si une
> image n'existe pas/plus, ce que je souhaiterai c'est que soit renvoyé
> sur :
> - Le index.html du dossier dans laquelle elle se trouvait ;
> ou
> - L'image avec le nouveau nom.


> L'idéal serait de renvoyer vers le fichier avec le nouveau nom, mais là,
> même si Olivier m'a fait découvrir le concept d'Alias, je suis perdu.


J'ai envie de dire : très mauvaise idée. Un 404 n'est pas juste là pour
fournir l'information cherchée immédiatement, il a aussi pour rôle
d'informer à la fois l'utilisateur et les caches que l'information n'est
pas là, et permettre ainsi de se remettre à sa recherche.

Si le même fichier exactement existe toujours mais est accessible sous
une autre URL, et que cette URL est connue, c'est « 301 Moved
Permanently » qu'il faut renvoyer, pas « 404 Not Found ».

Sinon, on peut envisager une page de 404 dynamique qui consulte un
moteur de recherche pour proposer à l'utilisateur des liens vers les
pages possibles. Ça peut être fait avec une page 404 dynamique côté
serveur ou bien une page 404 statique agrémentée de Javascript.

En revanche, avoir une page 404 spéciale ne sert pas à grand chose pour
les images, car elle ne serait affichée que quand un visiteur consulte
directement l'image. Quand l'image est incorporée à une page, ça
n'afficherait que l'icône standard d'image cassée. Un 301 fonctionne, en
revanche. Et bien sûr, l'auteur qui renomme un fichier image est censé
changer le nom aussi dans les pages du site.
Benoit (04/06/2017, 12h35)
Nicolas George <nicolas$george> wrote:

> Benoit, dans le message <1n71kqx.eiue0h1sscb5lN%benoit>, a
> écrit :
>> J'ai envie de dire : très mauvaise idée. Un 404 n'est pas juste là pour

> fournir l'information cherchée immédiatement, il a aussi pour rôle
> d'informer à la fois l'utilisateur et les caches que l'information n'est
> pas là, et permettre ainsi de se remettre à sa recherche.


J'ai cru comprendre qu'avec les alias on pouvait renvoyé une URL vers
une autre. C'est ce que je préfèrerai faire.

> Si le même fichier exactement existe toujours mais est accessible sous
> une autre URL, et que cette URL est connue, c'est « 301 Moved
> Permanently » qu'il faut renvoyer, pas « 404 Not Found ».


Oui, mais je n'ai pas accès à ça sur le serveur, mon hébergeur ne me
donne pas cette possibilité. Ou alors c'est un fichier « texte » que je
mets quelque part ?

> Sinon, on peut envisager une page de 404 dynamique qui consulte un
> moteur de recherche pour proposer à l'utilisateur des liens vers les
> pages possibles. Ça peut être fait avec une page 404 dynamique côté
> serveur ou bien une page 404 statique agrémentée de Javascript.


Hors de mon champ de compétences, connaissances, autorisations sur le
serveur... que je sache.

> En revanche, avoir une page 404 spéciale ne sert pas à grand chose pour
> les images, car elle ne serait affichée que quand un visiteur consulte
> directement l'image. Quand l'image est incorporée à une page, ça
> n'afficherait que l'icône standard d'image cassée. Un 301 fonctionne, en
> revanche. Et bien sûr, l'auteur qui renomme un fichier image est censé
> changer le nom aussi dans les pages du site.


Mes pages sont générées par un logiciel de création de site de photos,
il utilise le nom des images sans pb. Si je change le nom d'une image il
me génère un nouveau site et le télécharge sur le serveur.

L'image 1234.jpeg est incluse dans une page 1234.html qui contient
l'image et tout un tas d'autres choses. Comme le nom de l'image a changé
(en benoit.jpeg par exemple), le nom de la page a changé : 1234.html est
remplacée par benoit.html. C'est ce que je voudrai pouvoir gérer.

P.S. en me relisant je me rend compte que j'ai un peu mélagner les
choses puisque je parle d'image et non de page contenant une image.
J'espère être plus précis dans le dernier paragraphe.
Olivier Miakinen (04/06/2017, 14h17)
Le 03/06/2017 12:21, Benoit a écrit :
> L'idéal serait de renvoyer vers le fichier avec le nouveau nom,


Oui.

> mais là,
> même si Olivier m'a fait découvrir le concept d'Alias, je suis perdu.


Je n'ai pas parlé d'Alias mais de Redirect permanent, même s'il se
trouve que les deux se trouvent dans la même doc Apache :

<https://httpd.apache.org/docs/2.4/fr/mod/mod_alias.html>

<https://httpd.apache.org/docs/2.4/fr/mod/mod_alias.html#redirect>
<https://httpd.apache.org/docs/2.4/fr/mod/mod_alias.html#redirectpermanent>
Olivier Miakinen (04/06/2017, 15h05)
Le 04/06/2017 12:35, Benoit a écrit :
> L'image 1234.jpeg est incluse dans une page 1234.html qui contient
> l'image et tout un tas d'autres choses. Comme le nom de l'image a changé
> (en benoit.jpeg par exemple), le nom de la page a changé : 1234.html est
> remplacée par benoit.html. C'est ce que je voudrai pouvoir gérer.


.... donc un truc du genre :

Redirect permanent 1234.html benoit.html
Redirect permanent 1234.jpeg benoit.jpeg

Voire peut-être :

RedirectMatch permanent 1234\.(.*) benoit.$1

<https://httpd.apache.org/docs/2.4/fr/mod/mod_alias.html#redirectmatch>

Note que le mot-clé « permanent » indiqué ici n'est qu'une autre
façon de dire que c'est le code 301 qui est envoyé, ainsi que le
conseillait Nicolas George.

RedirectMatch 301 1234\.(.*) benoit.$1

P.-S. : je ne connais pas la syntaxe exacte, peut-être le / est-il
obligatoire, donc :

RedirectMatch 301 /1234\.(.*) /benoit.$1

ou :

RedirectMatch permanent /1234\.(.*) /benoit.$1
Benoit (04/06/2017, 16h37)
Olivier Miakinen <om+news> wrote:

[..]
> RedirectMatch 301 1234\.(.*) benoit.
> P.-S. : je ne connais pas la syntaxe exacte, peut-être le / est-il
> obligatoire, donc :
> RedirectMatch 301 /1234\.(.*) /benoit.
> ou :
> RedirectMatch permanent /1234\.(.*) /benoit.


Merci, mais je mets ça où ? Parce que la doc ne dit rien. En tout cas
j'ai envoyé un mail pour savoir pourquoi les fichiers .htacess, que je
téléchargeais, n'apparaissaient pas.
Yliur (04/06/2017, 22h38)
Le Sat, 3 Jun 2017 12:46:33 +0200
benoit (Benoit) a écrit :

> Déjà une première chose : les fichiers .htaccess que je dépose sont
> supprimés par le serveur, il ne les affiche pas dans le dossier.
> J'attends des infos de la part de mon hébergeur.


Comment fais-tu pour voir qu'ils n'apparaissent pas ?
Olivier Miakinen (04/06/2017, 22h59)
Le 04/06/2017 16:37, Benoit a écrit :
>> P.-S. : je ne connais pas la syntaxe exacte, peut-être le / est-il
>> obligatoire, donc :
>> RedirectMatch 301 /1234\.(.*) /benoit.$1
>> ou :
>> RedirectMatch permanent /1234\.(.*) /benoit.$1

> Merci, mais je mets ça où ?


De mémoire, ça doit être dans httpd.conf au niveau général, ou dans
un .htaccess répertoire par répertoire. Mais ça fait un moment que
je n'y touche pas.

> Parce que la doc ne dit rien. En tout cas
> j'ai envoyé un mail pour savoir pourquoi les fichiers .htacess, que je
> téléchargeais, n'apparaissaient pas.


Comment cherches-tu à les faire « apparaître » ? Si c'est par 'ls' sur
un Unix-like, il faut savoir que par défaut la commande ls n'affiche
pas les fichiers dont le nom commence par un « . », et pour les voir
il faut écrire par exemple « ls -a ».

Mais si c'est par un GET [..], vérifie que tu as
bien mis deux « c » aussi bien au nom du fichier que dans ta requête.
En effet, ci-dessus tu as écrit « .htacess » avec un seul c. ;-)
Yliur (04/06/2017, 23h22)
Le Sun, 4 Jun 2017 22:59:01 +0200
Olivier Miakinen <om+news> a écrit :

> Mais si c'est par un GET [..], vérifie que tu as
> bien mis deux « c » aussi bien au nom du fichier que dans ta requête.
> En effet, ci-dessus tu as écrit « .htacess » avec un seul c. ;-)


Est-ce qu'Apache renvoie le contenu de ce fichier ?
Olivier Miakinen (04/06/2017, 23h41)
Le 04/06/2017 23:22, Yliur a écrit :
>> Mais si c'est par un GET [..], vérifie que tu as
>> bien mis deux « c » aussi bien au nom du fichier que dans ta requête.
>> En effet, ci-dessus tu as écrit « .htacess » avec un seul c. ;-)

> Est-ce qu'Apache renvoie le contenu de ce fichier ?


Bonne question. Je viens d'essayer sur mon site, et la réponse est non :

<http://www.miakinen.net/.htaccess>
403 Forbidden
You don't have permission to access /.htaccess on this server.

Pourtant, le fichier existe bel et bien, je peux y accéder par FTP.
Sergio (05/06/2017, 07h45)
Le 04/06/2017 à 23:41, Olivier Miakinen a écrit :
> Le 04/06/2017 23:22, Yliur a écrit :
> Bonne question. Je viens d'essayer sur mon site, et la réponse est non :
> <http://www.miakinen.net/.htaccess>
> 403 Forbidden
> You don't have permission to access /.htaccess on this server.
> Pourtant, le fichier existe bel et bien, je peux y accéder par FTP.


Normal. Pour des raisons de sécurité, Apache empêche d'accéder aux fichiers cachés...
On ne petu y accéder que directement (via l'OS...) ou via FTP.
Eric Demeester (05/06/2017, 16h08)
Bonjour,

Benoit (Sat, 3 Jun 2017 12:46:33 +0200 -
fr.comp.infosystemes.[..]) :

Juste sur ce point :

> Déjà une première chose : les fichiers .htaccess que je dépose sont
> supprimés par le serveur, il ne les affiche pas dans le dossier.
> J'attends des infos de la part de mon hébergeur.


Vérifie que ton logiciel FTP est configuré pour afficher les fichiers
cachés. Les fichiers dont le nom débute par un point peuvent être
considérés comme des fichiers système et ne pas être affichés par
défaut.
Benoit (05/06/2017, 16h28)
Olivier Miakinen <om+news> wrote:

> Le 04/06/2017 16:37, Benoit a écrit :
> De mémoire, ça doit être dans httpd.conf au niveau général, ou dans
> un .htaccess répertoire par répertoire. Mais ça fait un moment que
> je n'y touche pas.
> un Unix-like, il faut savoir que par défaut la commande ls n'affiche
> pas les fichiers dont le nom commence par un « . », et pour les voir
> il faut écrire par exemple « ls -a ».
> Mais si c'est par un GET [..], vérifie que tu as
> bien mis deux « c » aussi bien au nom du fichier que dans ta requête.
> En effet, ci-dessus tu as écrit « .htacess » avec un seul c. ;-)


C'est par ftp que je le fais (avec deux « cc » ;)

Et oui il affiche les fichiers cachés. :-/
Nicolas George (05/06/2017, 18h54)
Benoit, dans le message <1n73gxe.1ltcp5qwtlky8N%benoit>, a
écrit :
> J'ai cru comprendre qu'avec les alias on pouvait renvoyé une URL vers
> une autre. C'est ce que je préfèrerai faire.


Non, ça ne peut pas marcher : la vraie question ici est de décider ce
qui doit se passer entre le serveur et le client. Les alias sont une
fonctionnalité interne au serveur (et encore, celui d'Apache). Ils
peuvent éventuellement permettre d'implémenter la politique choisie,
mais ile ne sont pas en eux-mêmes la réponse.

Un alias, ça permet de substituer un chemin à un autre quand il s'agit
d'aller chercher le fichier correspondant à une requête. Ça fait, avec
de petits avantages et inconvénients, la même chose que copier les
fichiers ou mettre des liens symboliques. C'est rarement la solution à
ce genre de problème. Ça sert plus à assembler différentes parties d'un
site gérées par différentes équipes en une seule hiérarchie.

>> Si le même fichier exactement existe toujours mais est accessible sous
>> une autre URL, et que cette URL est connue, c'est « 301 Moved
>> Permanently » qu'il faut renvoyer, pas « 404 Not Found ».

> Oui, mais je n'ai pas accès à ça sur le serveur, mon hébergeur ne me
> donne pas cette possibilité. Ou alors c'est un fichier « texte » que je
> mets quelque part ?


Si c'est Apache, c'est la même configuration que pour régler le document
404 ou autres options du même genre. Il faudra obtenir les détails de
l'hébergeur.

> Hors de mon champ de compétences, connaissances


Eh bien il faut les élargir. C'est toujours rentable.

> Mes pages sont générées par un logiciel de création de site de photos,
> il utilise le nom des images sans pb. Si je change le nom d'une image il
> me génère un nouveau site et le télécharge sur le serveur.
> L'image 1234.jpeg est incluse dans une page 1234.html qui contient
> l'image et tout un tas d'autres choses. Comme le nom de l'image a changé
> (en benoit.jpeg par exemple), le nom de la page a changé :


Ok.

> 1234.html est
> remplacée par benoit.html. C'est ce que je voudrai pouvoir gérer.


Tu ne donnes pas une information capitale : as-tu (ou peux-tu
construire) une liste complète des fichiers avec leurs anciens et
nouveaux noms ?

Si la réponse est oui, alors la bonne solution est de mettre en place
des 301 pour tous les fichiers, HTML de présentation et JPEG.

Si la réponse est non, alors un moteur de recherche prérempli dans le
document 404 est à mon avis le mieux qu'on puisse faire.

Discussions similaires
FMI - de mieux en mieux : après l'obsédé sexuel voici la conne

Etendre la partition système ou mieux pouvoir gérer données et programmes.

Mieux gérer SBSDomaine\Henri et Portable\Henri

Gérer mon site par mon nouvel hebergeur et gérer mes e-mails par Gandi


Fuseau horaire GMT +2. Il est actuellement 23h19. | Privacy Policy