// Fonction récupération code statut HTTP
function getHTTPHeaders($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1); // Inclure l'entête HTTP
curl_setopt($ch, CURLOPT_NOBODY, 1); // Ne pas télécharger le corps
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Ne pas afficher, mais retourner le résultat de curl_exec
return split("\n",curl_exec($ch));
}
Il n'existe aucun moyen pour savoir si ton visiteur arrive via une redirection, que ce soit une 301 ou une autre (sauf évidemment si c'est ton propre serveur qui fait la redirection).jboor a dit:je veux paramétrer ma page pour qu'elle affiche un message lorsque le visiteur y est tombé à partir d'une redirection 301
Facile ? facile ?Koxin-L a dit:Mais dans ce cas là, il est facile de récupéré le referer et de regarder ce qu'il se passe.
jboor a dit:je veux paramétrer ma page pour qu'elle affiche un message lorsque le visiteur y est tombé à partir d'une redirection 301
La redirection est effectuée par mon propre serveur et la fonction présentée par Koxin-L me semble toute indiquée.jeanluc a dit:Il n'existe aucun moyen pour savoir si ton visiteur arrive via une redirection, que ce soit une 301 ou une autre (sauf évidemment si c'est ton propre serveur qui fait la redirection).
Koxin-L a dit:// Fonction récupération code statut HTTP
function getHTTPHeaders($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1); // Inclure l'entête HTTP
curl_setopt($ch, CURLOPT_NOBODY, 1); // Ne pas télécharger le corps
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Ne pas afficher, mais retourner le résultat de curl_exec
return split("\n",curl_exec($ch));
}
La redirection est faite en PHPLeonick a dit:Si c'est une redirection définie dans ton htaccess, la solution serait d'ajouter un paramètre à la redirection, mais le problème, c'est qu'elle apparaitrait dans ta redirection visible.
Si c'est hors htaccess, utilise une variable session
if ($row != "") {
echo '<div>...</div>';
}
else
{
header("HTTP/1.1 301 Moved Permanently");
header("Location: http:/.../");
}