phpinfo() 에서 HTTPS 환경변수 값 ON OFF 가 안보입니다.
아마 서버 방화벽에서 어떤 처리를 한거 같은데,
웹브라우저에서는 분명 https://~~~ 로 ssl 접속이 되었는데,
phpinfo() 를 보면
환경변수 $_SERVER['HTTPS'] 항목 자체가 없습니다.
그러니 소스에서 https 가 on 인지 off 인지 알수가 없네요.
이럴 경우 소스에서 어떻게 https 여부를 판단할수 있을까요?
답변 3개
클라우드 같은 환경이라면
https://stackoverflow.com/questions/23533029/php-https-check-with-flexible-ssl-cloudflare-how-to-do" rel="nofollow noreferrer noopener" target="_blank">https://stackoverflow.com/questions/23533029/php-https-check-with-flexible-ssl-cloudflare-how-to-do
참고하세요.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
reverse proxy 를 사용중인지 확인하세요
사용 중이면 apache 나 nginx 에 설정을 몇가지 추가해 줘야 합니다.
답변에 대한 댓글 2개
댓글을 작성하려면 로그인이 필요합니다.
https로 접속을 했으면 포트가 443일겁니다.
$_SERVER['SERVER_PORT'] 이것으로 한번 구분을 하시는 방법이 있습니다.
서버 네트워크 환경에 따라서 x-forward 설정이 되어 있을수 있으니
$_SERVER['HTTP_X_FORWARDED_PROTO'] 이걸로도 확인해 보시기 바랍니다..
답변에 대한 댓글 1개
http_x_forwarded_proto 라는 변수도 없고,
443 이라는 포트번호 자체도 안보이는군요.
난감하네요.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
$_SERVER["HTTP_CF_VISITOR"]
$_SERVER['HTTP_X_FORWARDED_PROTO']
$_SERVER["HTTPS"]
이런 항목 자체가 없고,
server_port 는 그냥 80 으로 만 나오는군요.