모든 URL 매개 변수를 표시해야하는 매우 간단한 page.php가 있습니다. 내가 page.php 직접 이동하면
<?php
if (!isset($_SESSION)) {
session_start();
}
print_r($_GET);
?>
(I 더 복잡한 페이지에서이 문제가 발생하지만이 시험에 아래로 제거하고, 문제가 지속 있어요)? someProperty = 테스트, 가끔 빈을 얻을 array(), 두 번째 시도에서 예상대로 작동하고, 이후의 모든 시도. 잠시 떨어져있는 서버에서 요청을 처음 만들 때 항상 실패하는 것 같습니다. 나는 그것이 저급이라고 생각하기 시작했습니다. 디버그하기가 매우 어렵습니다. 관찰하자마자 사라집니다. 무엇이 이것을 일으킬 수 있습니까?
환경 정보 :
- PHP 5.3
- 아파치 2
- 레드햇 리눅스
PS - 나는 다른 유사한 게시물을 읽었지만, 각각의 경우에, 누군가가 있었다 세션 또는 무언가를 초기화하는 것을 잊어 버렸습니다. 또한 세션이 초기화되기 전에 공백이나 헤더가 설정되지 않았는지 확인했습니다.
업데이트 - 페이지가 URL 매개 변수를 읽지 못하면 브라우저는 위치 표시 줄에서도 쿼리 문자열을 즉시 삭제하고 도메인으로 축소합니다. .com/page.php
URL 바에 page.php? test = test의 전체 주소를 수동으로 입력하더라도 바로 단축되고 페이지에 빈 배열이 출력됩니다. 또한 Apache에서 활성화 된 모든 종류의 재 작성이 없습니다
은 어디에서 $ _GET을 받고? 제 말은, $ _GET은 꽤 일반적입니다. $ _GET에서 출력하려고하는 매개 변수를 정의하지 않은 것입니다. 마찬가지로, 당신은 다음과 같은 URL에서 "사용자"와 같은 것을 얻으 려하고 있습니까? http://mywebsite.com/index.php?user=130252 –
$ _GET이 세션과 어떻게 관련이 있는지는 알지 못합니다. 나는 세션을 사용하지 않는다. 그러나 $ _GET은 URL의 내용과 관련이 있습니다. –
이것은 브라우저 캐싱 문제일까요? Ctrl + F5를 누르면 캐시가 비워집니다. 또는 대부분의 브라우저에는 캐시를 사용하지 않는 메커니즘이 있습니다. 개발중인 스크립트를 테스트 할 때 상당히 좋은 생각입니다. – RiggsFolly