Skip to main content Help Control Panel

YACS CMS : Open source !

Community «   Le forum «   Soupçons de bogues «  

error.php : problème sous IE7

Christophe Battarel -- on Aug. 13 2008, from Grenoble-Chambery
YACS Team - Développement et intégration
Christophe Battarel
Responsable technique et co-gérant altairis
Mon Blog
quand une image n'est pas trouvée, j'ai une page d'erreur 404 (non yacs).

Il s'avère que cela provient du pavé suivant dans le script error.php :

// make it short if the caller does not expect some text (for example, waiting for some image)
if($error && isset($_SERVER['HTTP_ACCEPT']) && !preg_match('/^text\//i', $_SERVER['HTTP_ACCEPT'])) {
 echo $error.' Impossible to fulfill your request';
 return;
}

Je n'ai pas de problème si je mets ce pavé en commentaires.

Si je mets juste le return; en commentaires, cela marche aussi mais une vraie erreur 404 fait apparaitre le texte "404 - impossible to fulfill your request" avant la page yacs d'erreur.

Ce qui m'incite à penser que ce petit bout de code doit être revu...

Problem has been recorded
Bernard
avatar
from nearby-an-airport
Associate, 7053 posts

on Aug. 16 2008


Ce comportement est volontaire, et destiné à sauver des cycles CPU pour des images absentes.

Car une image mal référencée dans un template, une feuille de style, ou autre, génère de nombreuses requêtes erronées, et autant d'appels au script de gestion des erreurs.

Par défaut ce script charge tout un tas de modules pour afficher un message propre à l'humain derrière son écran. Sauf que dans le cas d'une image erronée, la plupart du temps le navigateur n'utilise pas cette information.

Donc la solution, radicale, je l'accorde, pour optimiser ces cas d'erreurs, est d'implémenter un traitement minimaliste juste pour les images en erreur. Juste un code et un message retournés au navigateur, et une sollicitation de quelques cycles CPU seulement côté serveur.

 
Share
Information channels
Recent files