referer 유지하며 페이지 리다이렉트

페이지 리다이렉트(포워딩)하는 방법이 여러가지 있지만, 대부분의 경우 워래 referer가 사라집니다.

javascript의 href.location 할당 방법, meta tag를 이용한 포워딩 방법, PHP에서 header(“Location: url”) 등 모두 referer가 유지되지 않죠.

HTTP 응답으로 301 Moved Permanently 코드를 사용하면, 원래 referer가 리다이렉트된
페이지에서 잡힙니다.

웹서버에서 특정 페이지에 대해 설정할수도 있지만, PHP에서 아래와 같이 header를 추가한 다음에 Location: 을 설정하면 됩니다.

[CODE type=php]
<?
  header (‘HTTP/1.1 301 Moved Permanently’);
  header (‘Location: newurl’);
?>
[/CODE]

referer는 아래처럼 출력해볼수 있습니다.

[code type=php]
<?
  echo($_SERVER[‘HTTP_REFERER’]);
?>
[/code]

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>