2010-02-12 6 views
1

J'ai un problème assez étrange avec PHP et Apache sur mon serveur de test local. Pour une raison quelconque, il continue d'arrêter d'envoyer des en-têtes au navigateur (je suis assez sûr que c'est le problème de toute façon).Les en-têtes PHP ne sont pas envoyés au navigateur

Ce n'est pas un cas de l'ancienne «sortie déjà envoyée» car il fonctionnait bien, avait le problème, est parti après avoir réinstallé Apache et est maintenant de retour. Les sessions semblent également être cassées. Il ne donne également aucune erreur pour les «en-têtes déjà envoyés», plus le code fonctionne sur le site en direct.

Ce n'est pas le navigateur non plus car j'ai essayé différents navigateurs et différentes machines, qui présentent les mêmes problèmes.

Même quelque chose d'idiot tel que <?php header ('Location: http://www.yahoo.com'); ?> ne fonctionne pas. Je cours wampserver (dernière version) sur Windows. Réponses sur une carte postale.

+0

Vérifiez vos journaux d'erreurs Apache, y voyez-vous quelque chose d'inhabituel? (aussi, "Réponses sur une carte postale.") – Piskvor

+0

Rien dans le serveur ne se déconnecte de l'ordinaire. :( – Meep3D

+0

Obtenez plus d'informations avec un outil comme firebug for firefox qui vous aidera à obtenir les en-têtes envoyés à votre navigateur – Patrick

Répondre

1

Utilisez-vous Xdebug? Il a un problème connu avec les en-têtes.

+0

Oui, c'était peut-être le problème. installez donc je ne peux pas vérifier, mais je vais essayer de supprimer Xdebug si cela se produit à nouveau pour voir ce qui le corrige. – Meep3D

1

Même quelque chose de stupide tel que <?php header ('Location: http://www.yahoo.com'); ?> ne fonctionne pas.

Essayez avec cette place:

0

Tout d'abord, vérifiez que votre php.ini a « display_errors » est réglé sur « » et pendant que vous y êtes, assurez-vous que « error_reporting » est réglé à 'E_ALL & ~ E_NOTICE'. Sans ceux-ci, vous ne verrez pas les erreurs, même si elles se produisent. Deuxièmement, assurez-vous que vous avez défini 'output_buffering' sur 'Off' dans le même fichier. Au cas où. Enfin, il a été question de vérifier votre journal Apache. Il est également important de vérifier votre journal des erreurs PHP (qui est généralement un fichier différent à nouveau).

+0

J'ai plein d'avertissements (et de notifications) et il n'y a pas d'alerte – Meep3D

+0

Vous avez aussi display_errors, il doit être explicitement configuré pour réellement voir ces erreurs, peu importe ce que vous avez défini pour montrer. Aussi, avez-vous vérifié le journal d'erreur de PHP par opposition à celui d'Apache? – Narcissus

1

Une réinstallation l'a fixé, bizarrement assez.

Questions connexes