Maison >développement back-end >Problème PHP >Que faire si php redirige l'erreur IE

Que faire si php redirige l'erreur IE

PHPz
PHPzoriginal
2023-04-05 14:34:56649parcourir

Dans le développement de sites Web, la fonction de redirection est souvent utilisée pour réaliser des sauts de page. En PHP, la redirection peut être réalisée en utilisant la fonction header, par exemple :

header('Location: http://www.example.com');
exit;

Cependant, dans le développement réel, nous rencontrons parfois quelques problèmes, dont l'un est que lors de l'utilisation de la fonction header pour la redirection, le navigateur IE Le serveur signale un erreur. Cet article décrira la solution dans cette situation.

1. Phénomène d'erreur du navigateur IE

Lors de l'utilisation de la fonction d'en-tête pour la redirection, certains navigateurs IE afficheront une boîte de dialogue d'erreur

En effet, lorsque la valeur de Location est définie sur un chemin relatif, le navigateur IE est le serveur ; l'interprétera comme un chemin de système de fichiers au lieu d'un chemin réseau, provoquant une erreur.

2. Solution

Lorsque cela se produit, nous pouvons avoir les solutions suivantes :

1. Utiliser un chemin absolu

Définissez la valeur de Location sur un chemin absolu, par exemple :

header('Location: http://www.example.com/index.php');
exit;

Cela peut éviter une mauvaise interprétation du navigateur IE. chemins relatifs.

2. Utiliser la mise en mémoire tampon de sortie

Utilisez la fonction ob_start pour activer la mise en mémoire tampon de sortie avant d'utiliser la fonction d'en-tête, par exemple :

ob_start();
header('Location: /index.php');
ob_end_flush();
exit;

Cela garantit que la fonction d'en-tête est exécutée avant la sortie et que la valeur de Location est définie sur un relatif. chemin.

3. Modifiez les paramètres d'IE

Définissez "Activer le mode protégé" dans l'option "Non-sécurité" du navigateur IE sur la même valeur ou décochez-la pour résoudre ce problème. Cependant, cette méthode n’est pas très pratique puisque la plupart des utilisateurs ne modifieront pas les paramètres d’IE.

4. Résumé

Lors de l'utilisation de la fonction d'en-tête pour la redirection, le navigateur IE rencontre une erreur, qui peut être provoquée par le chemin relatif interprété par IE comme un chemin de système de fichiers incorrect. Afin d'éviter que cette situation ne se produise, nous pouvons utiliser des chemins absolus, une mise en mémoire tampon de sortie ou modifier les paramètres d'IE pour résoudre le problème.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn