2013-08-12 3 views
0

IPB를 사용 중이며 SSL (HTTPS)을 통해 내 사이트를 제대로 작동하지만 문제가 있습니다. 기본적으로 쿠키에는 "https only"/ "secure"매개 변수가 없으므로 SSL을 끄면 쿠키가 HTTP (일반 텍스트)를 통해 전송 될 수 없습니다. 나는 그것을하는 방법에 대한 기사를 읽었지만 IPB에서는 그런 식으로 작동하지 않습니다. 여기가 설정되어 방법은 다음과 같습니다SSL 대신 HTTP를 통해 쿠키가 전송되었습니다.

Line 4227: @setcookie($_name, $value, $expires, $_path, $_domain . '; HttpOnly'); 
Line 4231: @setcookie($_name, $value, $expires, $_path); 
Line 4236: @setcookie($_name, $value, $expires, $_path, $_domain, NULL, TRUE); 
Line 4241: @setcookie($_name, $value, $expires, $_path, $_domain); 

img http://gyazo.com/bb00b575477dc6bbe42b1b6be9e1c96e.png

어떻게 "안전한"매개 변수를 적용 할 수 있습니다?

답변

2

setcookie() documentation에 있습니다.

세션 쿠키를 들어
@setcookie($_name, $value, $expires, $_path, $_domain, TRUE, TRUE); 
                 ^-#6 secure 
                   ^-#7 httponly 
+0

많이 감사드립니다. –

0

, 당신은 php.ini 파일에 기본값을 설정할 수 있습니다 :

session.cookie_httponly = On 
session.cookie_secure = On 

아니면 세션을 시작하기 전에 런타임에이를 설정할 수 있습니다 매개 변수 # 6 TRUE로 설정 .

session_set_cookie_params($expires, $_path, $_domain, TRUE, TRUE); 
session_start(); 

다른 모든 쿠키의 경우 setcookie 기능의 매개 변수를 사용해야합니다.

setcookie($_name, $_value, $expires, $_path, $_domain, TRUE, TRUE); 

httponly 매개 변수 (마지막 매개 변수)는 PHP 5.2.0에 추가되었습니다.

관련 문제