PHP

PHP POST 방식에서 뒤로가기 지원하기

bang2001 2013. 10. 28. 11:13

클라이언트에서 서버로 요청(Request) 정보를 보낼 때 크게 두 가지 방식이 있습니다.


1. Get 방식

2. Post 방식


Get 방식의 경우 서버에 요청(Request) 정보를 보낼 때 헤더(Header) 부분에 파라미터 값을 같이 실어서 보내는 방식이고, Post 방식은 전달하고자 하는 파라미터를 헤더(Header)가 아닌 몸체(Body) 부분에 실어서 보내는 방식입니다.


따라서 Get 방식의 경우 전달하고자 하는 파라미터가 웹 브라우저의 상단에 주소표시줄에 노출되는 반면에 Post 방식에서는 전달하고자 하는 파라미터가 주소표시줄에 노출이 되지 않습니다.


이러한 이유로 개인적으로는 Post 방식을 선호합니다. 하지만 Post 방식의 경우 대부분 [뒤로가기]가 지원되지 않습니다. 만약 Post 방식을 통해서 볼 수 있었던 웹 페이지를 [뒤로가기]로 보고자 할 경우 웹 페이지가 만료되었다는 메시지가 출력되게 됩니다.


따라서 이러한 문제를 해결하기 위해서는 PHP에서 아래와 같은 소스코드를 삽입해야 합니다.


session_cache_limiter("private_no_expire");

session_start();


session_start(); 함수가 실행되기 이전에 session_cache_limiter("private_no_expire"); 함수를 호출해야 합니다. 이 소스코드를 삽입하게 되면 Post로 전달받은 웹 페이지도 [뒤로가기]를 통해서 보실 수 있습니다.


다만 위 소스코드가 보안상에서 취약할 수 있다고 합니다. 보안에 관해서는 구체적으로 알지못하여 알려드릴 수 없지만, 웹 보안에서 취약할 수 있다는 점을 참고하시기 바랍니다.


이 게시글에 대한 부족한 점은 앞으로 계속해서 수정하여 보완하도록 하겠습니다.