Reputation: 1685
if (condition)
{
#lol. Some code here
}
else
{
header("Location:/");//i'm trying to redirect to the root
}
Redirect works perfectly on localhost, but not on remote server.
May be it's all better to use $_SERVER
?
This redirect wouldn't work even if i choose file in the same directory as file with redirect.
Hope you help me :)
Upvotes: 3
Views: 15149
Reputation: 33143
From the manual:
HTTP/1.1 requires an absolute URI as argument to » Location: including the scheme, hostname and absolute path, but some clients accept relative URIs. You can usually use
$_SERVER['HTTP_HOST']
,$_SERVER['PHP_SELF']
anddirname()
to make an absolute URI from a relative one yourself:
<?php
/* Redirect to a different page in the current directory that was requested */
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'mypage.php';
header("Location: http://$host$uri/$extra");
exit;
?>
Upvotes: 5