header sans effet [PHP] - PHP - Programmation
Marsh Posté le 02-10-2008 à 14:57:46
Je me réponds à moi-même parce que j'ai trouvé une partie de la solution à mon problème : ma page de base est en fait un header.php dont je me sers pour modifier l'apparence de la page d'index par défaut d'Apache (avec la directive HeaderName). Et manifestement, dans ce cas précis, la redirection ne fonctionne pas. Le problème reste le même : comment faire pour que mon header() marche ?
Marsh Posté le 02-10-2008 à 15:20:08
@header pour tous tes headers successifs ( potentiels dans ton code )
+ supprimer le moindre output avant ton header ( les espaces toussa )
=> Le mieux est de faire le tampon en début de fichier ( c'est crade mais tous tes headers passeront )
Marsh Posté le 02-10-2008 à 15:41:13
Euh, c'est pas vraiment mon problème en fait .
J'ai continué à chercher, le problème vient bien du fait que je tente de faire un header() directement dans la page par défaut.
Donc voilà le tout début de mon fichier header.php (et y'a vraiment pas de caractères avant) :
Code :
|
Si j'accède à cette page en précisant son url, la redirection s'effectue. En revanche, si j'accède juste à la racine de mon serveur, cette page est bien appelée (via le mod_autoindex() et HeaderName), mais le header() reste sans effet, et pas de message d'erreur.
Et le plus fort, c'est que si je modifie pour avoir ceci :
Code :
|
j'ai ceci qui s'affiche :
Citation : coin coin ! |
Donc là, l'erreur est logique mais ça veut dire qu'il prend en compte le header() alors qu'il ne semble pas le faire dans le premier cas !
C'est vraiment bizarre comme problème, mais je suis quand même pas le premier à avoir ce problème j'espère !
Marsh Posté le 02-10-2008 à 21:41:06
headers already sent by (output started at /usr/share/apache2/common/blabla/header.php:2)
je l'ai déjà dis une fois ..
Marsh Posté le 02-10-2008 à 22:05:23
grosbin a écrit : headers already sent by (output started at /usr/share/apache2/common/blabla/header.php:2) |
Donc t'as réussi à me répondre deux fois sans lire mes posts . Merci de faire partager ton savoir .
Marsh Posté le 03-10-2008 à 09:21:33
C'est louche ton truc...faire un header('Location: ...') dans un fichier appelé via la directive HeaderName de mod_autoindex ça me parait étrange...
HeaderName est là pour inclure une entête automatiquement dans ta page, et je pense pas que le mod_autoindex soit capable de suivre une redirection http pour inclure ce qu'il y a au bout...
Marsh Posté le 03-10-2008 à 09:55:32
skeye a écrit : C'est louche ton truc...faire un header('Location: ...') dans un fichier appelé via la directive HeaderName de mod_autoindex ça me parait étrange... |
Ouais, visiblement mon problème est insoluble . L'idée de base (comme on voit dans le premier post), c'était d'ajouter à la page d'index un petit système d'authentification. Tant pis, je vais faire autrement.
Marsh Posté le 03-10-2008 à 19:18:14
Et avec :
Code :
|
Ca donne quoi ?
Marsh Posté le 03-10-2008 à 20:43:59
Rien non plus, j'ai vraiment tout essayé pour les paramètres (même google.com donc ). Si vraiment il y a une solution à mon problème, ça doit être au niveau de la conf' de quelque chose quoi. Mais finalement, j'ai contourné le problème d'une autre manière .
Marsh Posté le 05-10-2008 à 10:47:25
Tu as tracé les entêtes avec un analyseur d'entête (sous firefox il existe une extension). Ca te permettra de comprendre
Marsh Posté le 05-10-2008 à 16:44:17
ReplyMarsh Posté le 05-10-2008 à 17:29:02
sub1 a écrit : Hello,
après les headers. |
non.
Marsh Posté le 02-10-2008 à 14:17:33
Bonjour,
J'ai un problème assez étrange avec un header("Location..." ) qui ne veut pas fonctionner. Mais je n'ai pas d'erreur affichée pour autant (et j'ai bien activé l'affichage des erreurs, c'est pas l'erreur classique du "header already sent" ).
En gros j'ai une page de base, dont voici le début :
Et voici le "authentification.php" :
Et donc la commande header() n'a aucun effet. J'ai déjà regardé plusieurs pistes sur les conflits possibles entre include(), header() et session_start() mais je n'ai pas l'impression que mon code soit mal foutu . Des idées ?