我正试图强制从www
使用https
重定向到index.php
,但我不断获得无限重定向循环。
这是我的代码:
的index.php:
$configs = include_once($_SERVER['DOCUMENT_ROOT'] . '/application/config/maintenance.php');
if (stripos($_SERVER['SERVER_PROTOCOL'], 'https') === false && $configs['protocol'] == 'https') {
$protocol = 'https://';
$protocolRedirect = true;
} else {
$protocol = 'http://';
$protocolRedirect = false;
}
if (strtolower(substr($_SERVER['HTTP_HOST'], 0, 4)) !== 'www.') {
$url = $protocol . 'www.' . $_SERVER['HTTP_HOST'];
$wwwRedirect = true;
} else {
$url = $protocol . $_SERVER['HTTP_HOST'];
$wwwRedirect = false;
}
if ($_SERVER['REQUEST_URI'] != '/') {
$url .= $_SERVER['REQUEST_URI'];
}
if ((isset($wwwRedirect) && $wwwRedirect == true) || (isset($protocolRedirect) && $protocolRedirect == true )) {
header('Location: ' . $url);
exit();
}
maintenance.php:
return array(
'protocol' => 'https'
);
知道为什么吗?
注意:服务器正在运行Nginx
- 但我不想重定向它。