exit function
DATE : 2023/11/4
[PHP#func : exit]
header function에 이어 exit에 대해 알아볼까 한다.
짧게 header function이 동작하는 방식을 떠올려보면
response header에 주어진 값을 넣어주기 때문에 Location header를 작성해 redirection을
구현하는 방법 중 하나로 사용할 수 있었다.
그.런.데
사용자 입장에서는 단순히 페이지가 바뀌는 redirection 과정에서
페이지 내용이 노출될 수 있다고 한다. 😳
눈으로 확인하기 위해 간단한 코드를 작성해보자.
위의 코드는 index.php 코드로 사용자가 index page에 접근했을 때
$_GET['login_id'] 값이 비어있으면 login.html로 이동하는 구조이다.
실제로 index page에 접근하면
바로 login.html로 이동하는 걸 볼 수 있다.
표면적으로만 보면 별 문제가 없을 수 있지만 packet을 확인해보면
로그인 한 사용자에게만 제공되어야 하는 index page 내용이 노출되고 있다..!
이렇게 header function만 사용하는 경우,
header function이 사용된 후의 페이지 내용이 그대로 response에 들어가게 된다.
이때 페이지 내용이 packet에 노출되는 걸 막기 위해 사용할 수 있는 함수가 바로 exit이다.
header function을 사용한 후 exit function을 추가해주면
header function 이후 작성된 html이 더 이상 보이지 않는다!
이렇게 exit function을 사용하면
redirection은 그대로 수행되는 동시에 페이지 내용이 노출되는 걸 막을 수 있다.
(+) 참고
참고로 exit function은 문구를 출력하거나 error code를 사용하는 등
사용할 수 있는 형태가 다양하다.
Last updated