2009-12-16 5 views
0

Je cours Apache 2.046 avec PHP 5.x et je rencontre un comportement très étrange sur une application CodeIgniter. La chose frustrante est que ce n'est pas cohérent. Parfois, lorsque j'appelle mon application, Apache ne renvoie rien. Je veux dire nada. Mais alors je frappe rafraîchir et tout fonctionne comme prévu. Parfois, je dois frapper "refreash" plusieurs fois avant que la page ne se charge. D'autres fois, ça arrive tout de suite. Quand j'ai commencé ce post, il se passait 80-90% du temps. Maintenant, je n'arrive pas à y arriver. Mais cela se passe depuis plusieurs jours, alors j'ai confiance dans les prochaines pages de visites que je vais revoir.Apache revient avec rien

Ceci est sur une boîte de développement qui a très peu de trafic. Quand je fais un PS, je vois plusieurs threads HTTP en cours d'exécution - "top" ne révèle rien d'inattendu (comme un processus d'emballement).

Lorsque j'achète les journaux d'accès apache, je ne vois même pas de requête enregistrée lorsque Apache renvoie un espace vide. Aucune erreur Apache ou PHP n'est levée.

Je mentionne codeIgniter principalement parce que nous utilisons le fichier .htaccess recommandé avec Mod Rewrite. Je ne savais donc pas si cela contribuait à la question. Il ne semble pas non plus être un problème avec les applications non-codeIgniter. C'est difficile à dire avec confiance puisque le problème est si incohérent.

Cela ne semble pas être un problème client, car nous voyons cela se produire à partir de plusieurs machines clientes.

Je ne peux pas dire s'il s'agit d'un problème de serveur (matériel), d'un problème d'Apache ou d'un problème de codage. Peut-être que c'est un problème de mémoire?

Des pensées?


NOUVELLES INFORMATIONS:

dans le fichier journal de PHP J'ai reçu ceci:

PHP Erreur fatale: scanner flex fatale erreur interne - fin de tampon manqué dans/data/www/corelib/codeIgniter/system/libraries/Hooks.php à la ligne 226

Répondre

1

Si vous pensez que vos règles de réécriture sont à l'origine du problème, augmentez le niveau de consignation de mod_rewrite et découvrez-le. Sinon, le fait que tout fonctionne normalement en dehors de votre application fait que cela ressemble à un problème avec votre code ou éventuellement le cadre lui-même.

+0

Merci pour la suggestion. Je vais le faire (je ne savais pas que mod_rewrite avait ses propres niveaux de journalisation). L'application CI est la seule qui utilise mod_rewrite - donc ce n'est pas définitif d'une manière ou d'une autre. Je suis certain que c'est un problème de codage - Mais le problème de codage "qui est" est la question;) – ChronoFish

3

Les pages vierges lors de l'utilisation de CI sont généralement causées par des erreurs php avec suppression des messages d'erreur. Essayez de les réactiver et de les recharger.

error_reporting(E_ALL|E_WARNING) 
+0

Merci, je suis certain que le rapport d'erreur est déjà monté - mais je suis allé de l'avant ajouté votre suggestion à mon contrôleur. Merci. – ChronoFish

+2

étant donné que le problème peut se situer plus bas dans la pile, définissez-le dans votre fichier index.php. –

+0

bonne idée - merci – ChronoFish