2013-05-14 2 views
1

열린 링크를 열면 페이지가 계속로드됩니다. 일부 페이지에서는 header('location:link'); 문 뒤에 exit();을 입력하여 수정됩니다.URL을 열 때 페이지가 계속로드됩니다.

일반적으로이 문제는 웹 사이트의 두 페이지 이상을 함께 열 때 발생합니다. 이 경우이 사이트의 다른 페이지에 대한 요청이 열리지 않고로드됩니다. 10 ~ 20 분 후 페이지가 열립니다.

페이지가로드 된 상태에서 새 탭에서이 사이트의 다른 페이지를 열면 라이브 HTTP 헤더에 요청이 전송되지 않는다고 표시됩니다.

어떤 도움이 필요합니까?

+1

는 항상 헤더 후 출구를 넣어 ("위치 : 링크를"); 그러나 스크립트가 완료되지 않고 세션이 잠긴 상태로 계속 액세스하는 것을 방지하는 것처럼 들립니다. (이것은 데이터베이스에 큰 데이터 세트를 로딩 할 때 나에게 일어 났고, 나의 솔루션은 동일한 사이트의 다른 탭이 계속 작동하도록하는 session_write_close에 대한 것이었다) http://www.php.net/manual/en/function.session-write-close .php – Waygood

+2

정말 답을 줄 수있는 정보가 충분하지 않습니다. 사실상 여러 가지 일 수 있습니다. – adamj

답변

0

헤더 위치는 항상 exit(); 뒤에 나와야이 지점 아래의 코드 실행을 방지 할 수 있습니다.

세션이 닫힐 때까지 다른 페이지가 액세스하지 못하도록 잠글 수 있기 때문에 세션에 대한 접근 권한을 찾을 수 있습니다.

session_write_close(); 
header("Location: URL"); 
exit(); 

참조 : Why I have to call 'exit' after redirection through header('Location..') in PHP?

http://www.php.net/manual/en/function.session-write-close.php

관련 문제