会话Cookie没有HttpOnly标志设置

我已经build立了一个login系统的网站。 在我准备好之后,我用Acunetix扫描了它,但是我收到以下消息:

会话Cookie没有HttpOnly标志设置会话Cookie没有安全标志设置(我猜这只是如果我有SSL连接)

所以我的问题是,我如何设置HttpOnly标志为我所有的会话数据? 我只是在login用户时使用会话。 我给他们一个与他们的用户ID号码的会议比我使用该用户ID获取数据。

有什么简单的方法,我可以设置所有的会话HTTPOnly和安全他们,所以没有人可以触摸他们?

您可以更改php.ini中的设置,也可以通过ini_set()调用将session.cookie_securesession.cookie_httponly值更改为true

或者,您可以在开始会话之前使用session_set_cookie_params()来获得您要查找的效果。

http://us3.php.net/manual/en/function.session-set-cookie-params.php

你应该看看这个问题的优秀网站 。 它归结为在你的php.ini(或通过适当的运行时功能)的会话部分:

 session.cookie_httponly = True 

当你使用PHP的setcookie时,你也可以设置httponly标志为false

 // params: name, value, expiration, path, domain, secure, http-only setcookie('session-cookie-key', 'data', 0, '/', 'example.com', true, false);