[英]How to Redirect one page to HTTPS in PHP?
我正在嘗試使用以下代碼僅將我網站的索引頁面重定向到 HTTPS 版本,但它使domain.com redirected you too many times
即ERR_TOO_MANY_REDIRECTS
錯誤。 除了 4XX 和 5XX 錯誤重定向之外, htaccess
中沒有重定向代碼。
if($_SERVER['HTTPS'] !== "on")
{
$redirect= "https://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
header("Location:$redirect");
}
如何僅將一個頁面重定向到 HTTPS 而不會影響 PHP 中的其他 URL?
你的問題在這一行
if($_SERVER['HTTPS'] !== "on")
根據手冊
'HTTPS' :如果通過 HTTPS 協議查詢腳本,則設置為非空值。
所以只需使用
if(!$_SERVER['HTTPS'])
這是我對非 www 頁面進行重定向的代碼。 您可以輕松地將其調整為 https。
// redirect to www if necessary
$kc_ur_pos = stripos($_SERVER['HTTP_HOST'],'www.');
if ($kc_ur_pos === false)
{ $kc_ur='https://www.';
$kc_ur .= $_SERVER['HTTP_HOST'];
$HTTPURI = $kc_ur . $_SERVER['REQUEST_URI'];
header("HTTP/1.1 301 Moved Permanently"); // Optional.
header("Location: $HTTPURI");
exit;}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.