https로 접속시 강제로 http로 리다이렉트 시키는방법이 있나요?
한 서버에 ssl을 두개 돌리니 하나는 포트가 444라 url에 포트가 따라다녀 아예 https로 접속을 하면
http로 강제 리다이렉트를 시켜버리려고 합니다. 방법이 있나요?
그누보드 사이트는 아닙니다.
답변 3개 / 댓글 2개
// 바탕 base_URL
// 서버 중 일부에서 $_SERVER['HTTPS'] 는 정의되지 않은 변수이므로 오류가 발생합니다.
if(isset($_SERVER['HTTPS'])) {
if ($_SERVER['HTTPS'] == "on") {
$secure_connection = true;
$base_URL = "https://";
}
} else {
$base_URL = "http://";
}
//$base_URL = ($_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$base_URL .= ($_SERVER['SERVER_PORT'] != '80') ? $_SERVER['HTTP_HOST'] . ':' . $_SERVER['SERVER_PORT'] : $_SERVER['HTTP_HOST'];
echo $base_URL;
//=> http://happyjung.com
를 잘 응용해보세요. 444 일때는 http 로 보내는 방법을...
답변에 대한 댓글 2개
<php
// 바탕 base_URL
// 서버 중 일부에서 $_SERVER['HTTPS'] 는 정의되지 않은 변수이므로 오류가 발생합니다.
if(isset($_SERVER['HTTPS'])) {
if ($_SERVER['HTTPS'] == "on") {
$secure_connection = true;
$base_URL = "https://";
}
} else {
$base_URL = "http://";
}
//$base_URL = ($_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$base_URL .= ($_SERVER['SERVER_PORT'] != '80') ? $_SERVER['HTTP_HOST'] . ':' . $_SERVER['SERVER_PORT'] : $_SERVER['HTTP_HOST'];
echo $base_URL;
?>
https://aa.com:444 라고 찍히게 됩니다.
다시 정리해보면
<php
// 바탕 base_URL
// 서버 중 일부에서 $_SERVER['HTTPS'] 는 정의되지 않은 변수이므로 오류가 발생합니다.
if(isset($_SERVER['HTTPS'])) {
if ($_SERVER['HTTPS'] == "on") {
$secure_connection = true;
$base_URL = "https://";
}
} else {
$base_URL = "http://";
}
//$base_URL = ($_SERVER['HTTPS'] == 'on') ? 'https://' : 'http://';
$base_URL .= ($_SERVER['SERVER_PORT'] != '80') ? $_SERVER['HTTP_HOST'] . ':' . $_SERVER['SERVER_PORT'] : $_SERVER['HTTP_HOST'];
//echo $base_URL;
if($base_URL == "https://aa.com:444"){
header('location : http://www.abc.com/');
}
?>
이렇게 하면 원하는 결과가 보일껍니다.
if($_SERVER['SERVER_PORT'] == "444"){
header('location : http://www.abc.com/');
}
이렇게 하면 어떨까 싶습니다.
모든 페이지 상단에 아래의 소스를 추가해보세요.
if($_SERVER['REQUEST_SCHEME'] =='https') {
echo '<meta http-equiv="refresh" content="0;URL=\'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].'\'">';
}
답변을 작성하려면 로그인이 필요합니다.
echo $base_URL;
if($base_URL == "444"){
header('location : http://www.abc.com/');
}
$base_URL이 444가 찍히는데 왜 이동을 안할까요?