Как установить cookie в PHP apps как HttpOnly cookies?
Как настроить cookie HttpOnly на PHP?
Ответ 1
- Для ваших файлов cookie см. этот ответ.
 -  Для  собственного скриптового файла PHP (
PHPSESSID, по умолчанию), см. ответ @richie 
 setcookie() и setrawcookie() функции, ввел параметр httponly, в темные времена PHP 5.2.0, что делает это приятным и легким. Просто установите для 7-го параметра значение true, согласно синтаксису
Синтаксис функций упрощен для краткости
setcookie(    $name, $value, $expire, $path, $domain, $secure, $httponly )
setrawcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
Введите NULL для параметров, которые вы хотите сохранить по умолчанию.
Вы также можете рассмотреть возможность установки параметра secure.
Также возможно использование более старой функции header():
header( "Set-Cookie: name=value; httpOnly" );
		Ответ 2
Для собственных скриптов сеансов PHP на Apache: 
добавьте это в свою конфигурацию Apache или .htaccess
<IfModule php5_module>
    php_flag session.cookie_httponly on
</IfModule>
Это также можно установить в script, если оно вызывается до session_start().
ini_set( 'session.cookie_httponly', 1 );
		Ответ 3
Помните, что HttpOnly не останавливает межсайтовый скриптинг; вместо этого он нейтрализует одну возможную атаку и в настоящее время делает это только в IE (FireFox предоставляет файлы HttpOnly cookie в XmlHttpRequest, а Safari вообще не соблюдает его). Во что бы то ни стало, включите HttpOnly, но не теряйте даже час фильтрации выходных данных и тестирования fuzz в торговле для него.
Ответ 4
Обратите внимание, что cookie сеансов PHP не использует httponly по умолчанию.
Для этого:
$sess_name = session_name();
if (session_start()) {
    setcookie($sess_name, session_id(), null, '/', null, null, true);
}
Несколько примечаний здесь:
-  Вам нужно позвонить 
session_name()доsession_start() - Это также устанавливает путь по умолчанию к '/', который необходим для Opera, но какой PHP файлы cookie сеанса не выполняются по умолчанию либо.
 
Ответ 5
Объяснение здесь из Ilia... 5.2, хотя
httpOnly поддержка флага cookie в PHP 5.2
Как указано в этой статье, вы можете установить заголовок самостоятельно в предыдущих версиях PHP
header("Set-Cookie: hidden=value; httpOnly");
		Ответ 6
Вы можете указать его в установленной функции cookie см. руководство по php
setcookie('Foo','Bar',0,'/', 'www.sample.com'  , FALSE, TRUE);
		Ответ 7
<?php
//None HttpOnly cookie:
setcookie("abc", "test", NULL, NULL, NULL, NULL, FALSE); 
//HttpOnly cookie:
setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE); 
?>
		Ответ 8
Вы можете использовать это в файле заголовка.
// setup session enviroment
ini_set('session.cookie_httponly',1);
ini_set('session.use_only_cookies',1);
Таким образом, все будущие файлы cookie будут использовать httponly.
Ответ 9
Правильный синтаксис команды php_flag
php_flag  session.cookie_httponly On
И помните, что только первый ответ с сервера установил cookie и здесь (например, вы можете увидеть директиву HttpOnly. Поэтому для тестирования удалять файлы cookie из браузера после каждого запроса на тестирование.