Forum Programmation.php .htaccess et comportement bizarre

Posté par  (site web personnel, Mastodon) .
Étiquettes : aucune
0
22
mai
2006
Bonjour,

en fait je suis entrain de coder un cms maison et je constate un comportement bizarre avec le fichier htaccess.

Bon explication du cms:
un internaute désire la page /fr/accueil.html, si dans le répertoire il y a pas de page accueil.html j'ai mis dans un fichier .htaccess à la source du site que en cas d'erreur 404 il appel le fichier cache.php.
Dans ce cas cache.php va regarder dans une base mysql si il y a une entrée accueil.html.
Si c'est le cas il génère un header 200 envoie la page au navigateur et écris notre fichier dans le répertoire fr. C'est le principe du cache.
Jusque la tous va bien,
ou cela ce gâte, c'est que j'ai cassé le fichier cache.php (mise a jour) et avant de le remettre en ordre, j'ai testé la console d'administration (qui ne partage rien avec cache.php sauf le fichier de config) et la rien il tourne dans le vide et s'arrête sans rien cracher.
Je finis par réparer le fichier cache.php et ça repart.
Je constate que quand je casse mon fichier.php plus aucune page présente physiquement sur le site n'est accessible.
Il turbine et donne jamais de fichier.
J'en déduit que c'est le fichier .htaccess qui influence tous cela, je l'efface et ça fonctionne.

Pour résumer:
quand je casse cache.php c'est qu'il essaye de faire un fopen sur un truc qui existe pas.

Donc si cache.php cassé:
- Le serveur ne sert plus aucun fichier (présent) il tourne longtemps avant de mourir sans rien servir (même un bête fichier html).
- Si on efface le .htaccess le serveur sert les pages normalement (bon le cms fonctionne plus c'est normal)
- si le fichier cache.php est en ordre tout va bien

Ma question: est ce normal qu'il parse mon fichier cache.php quand il rencontre pas d'erreur 404 ?

Je vous fait un copier coller de mon fichier .htaccess

ErrorDocument 403 /selnet/cache.php
ErrorDocument 404 /selnet/cache.php
DirectoryIndex index.php index.html index.xhtml /selnet/cache.php

Je vous remercie d'avance et j'espère avoir été concis (c'est pas facile d'exprimer un problème).
  • # CPU

    Posté par  (site web personnel, Mastodon) . Évalué à 3.

    Mettre un script php faisant usage de MySQL comme 404, c'est chercher à faire mouliner le CPU: pour *chaque* requête menant sur un 404, ton script va tourner: lien defect, image ou média manquants, robots d'indexation cherchant des anciennes pages, robot méchants qui cherchent des failles, etc.

    Voilà, mes deux centimes qui n'ont probablement rien à voir avec ton problème, dont je n'ai pas saisi l'axe central (désolé, c'est tard, toussa)

    La gelée de coings est une chose à ne pas avaler de travers.

  • # une idée ?

    Posté par  . Évalué à 2.


    DirectoryIndex index.php index.html index.xhtml /selnet/cache.php


    si tu le changes en

    DirectoryIndex index.php index.html index.xhtml


    ca devrait fonctionné pareil sans passer à chaque fois dans le fichier cache.
  • # j'ai trouvé

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    c'est tous simplement firefox qui cherche le fichier favicon.ico qui n'exite pas qui fait que le fichier cache.php est appelé.
    Merci à l'extension "en-têtes HTTP direct" qui à permis de voir cela.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.