Windows 7 (x64)에서 Apache 2.4.4 및 PHP 5.4.14를 사용하고 있습니다. 내가 가진 문제는 PHP 세션이 붙지 않는다는 것입니다. 이것은 아파치 2.2와 PHP 5.4.4에서도 발생했는데, 어제는 php.ini
의 설정이 잘못되었지만 아무것도 바뀌지 않았기를 바래서 업데이트되었습니다.PHP/Apache - 고집하지 않는 세션
크롬에서 세션 ID는 모든 페이지에 대해 변경됩니다 (다시 쓰기 규칙을 사용하는 경우에만 해당). 다시 쓰기 규칙을 사용할 때 쿠키 path
은 /
대신에 /pages_name/
으로 이상하게 변경됩니다.
오페라에서 세션 ID는 페이지를 새로 고침해도 변경됩니다. IE에서도 마찬가지입니다.
두 경우 모두 쿠키는 브라우저에서 허용됩니다.
RewriteEngine on
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?page=$1&info1=$2&info2=$3 [L]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z0-9]+)/?$ index.php?page=$1&info1=$2 [L]
RewriteRule ^([a-zA-Z]+)/?$ index.php?page=$1 [L]
검색 후 내가 몇 가지 "솔루션"없음 우연히이있는
세션 경로가 작동 저장
을 열심히 파일은 writen되고있다. 기본 세션 처리기 사용. 자세한 정보가 필요하면내가 session_regenerate_id
session_start();
를 사용하고 있지 않다 다음 다른 0
을 session.cookie_lifetime
설정 /
에 session.cookie_path
를 설정하면 모든 페이지
에 코드의 첫 번째 줄입니다 나는이 포스트를 새롭게 할 것이다, 고마워. 추가 연구에
IT는 RewriteRule
의, 아직 문제를 해결하는 방법을 모르고의 문제로 밝혀졌습니다.
또한 session_start()
의 쿠키는 마치 폴더 인 것처럼 localhost/home/
으로 설정되어 있지만 변수는 localhost/index.php?page=home
입니다. 이 모든 페이지는 자체적으로 session id
을 가지므로 수정 프로그램에 대한 아이디어가 있습니까?
세션 파일이 기록되는 경로를 확인 했습니까? 모든 요청에 따라 점점 더 많은 파일이 생성되고 있습니까, 아니면 전혀 생성되지 않습니까? 기본 세션 핸들러를 사용한다고 가정합니다. – leftclickben
을 언급하는 것을 잊어 버렸습니다. 그렇습니다. 경로는 좋으며 요청마다 점점 더 많은 파일이 생성됩니다. 기본 세션 처리기를 사용하고 있습니다. – MPKaboose
URL에 세션 정보가 전달됩니까? 쿼리 문자열 에서처럼? –