2016-07-11 7 views

답변

4

내게는 HTTP (https가 아님)를 통해 관리자에게 액세스하는 동안 세션 쿠키에 secure 플래그가있는 것이 문제였습니다.


우리의 nginx 구성은 내가 제거해야

fastcgi_param HTTPS on; 

했다.

3

CSRF 공격을 막기 위해 세션에 CSRF 토큰이 포함되어야합니다. 이 메시지는 사용자가 토큰을 저장하지 않았거나 토큰이 서버에서 생성 한 토큰과 같지 않다는 것을 의미합니다. 세션을 저장할 수있는 php.ini에서 쓰기 가능한 경로를 구성하지 않았다고 가정합니다. php.ini의 session.save_path를 쓰기 가능한 경로로 설정했는지 확인하십시오.

3

어떤 설정을 사용하고 있습니까? 나는 이것이 nginx + php-fpm에서 일어 났으며, 관리자가 근무한 곳과 session.cookie_domain의 값을 공백으로 두어야한다는 것을 알게 된 하나의 컴퓨터에서 php.ini의 차이를 발견했다.

0

때로는 이전 PHP 버전에서 발생하지만별로 중요하지 않습니다. 페이지를 새로 고치거나 다시 열면 문제가 해결됩니다.

1

/var/lib/php/session이 있는지 확인하고 nginx에 쓸 수 있는지 확인하십시오.

-1

시험해보세요.

chgrp nginx /var/lib/php/session 

세션 저장 경로로 인해 쓰기 가능하지 않을 수 있습니다. 나는 같은 문제에 직면했고 위의 명령으로 해결했다. nginx 사용하지만 다른 웹 서버를 사용하는 경우 그냥 변경하십시오. 희망이 도움이!

+0

왜 내 대답을 투표합니까? 나는 향상시키고 싶지만 이유를 남겨주세요. – wdetac