Имена заголовков с подчеркиванием игнорируются в php 5.5.1 / apache 2.4.6
после обновления до php 5.5.1 и apache 2.4.6 проверка определенных заголовков теперь нарушена (в частности, проверка HTTP_X_REQUESTED_WITH
).
через дальнейшее тестирование я заметил, что любой пользовательский заголовок, содержащий подчеркивание, игнорируется (под этим я подразумеваю, что он не отображается в PHP $_SERVER
массив). Поэтому, если я добавлю заголовок с именем my-header
, он становится доступным как $_SERVER['HTTP_MY_HEADER']
, но если я попытаюсь добавить заголовок my_header
, он недоступен в $_SERVER
.
1 ответов
Это документированная функция в apache 2.4. См.httpd.apache.org/docs/trunk/new_features_2_4.html
перевод заголовков в переменные среды является более строгим, чем прежде чем смягчать некоторые возможные атаки межсайтовых сценариев через инъекция заголовка. Заголовки, содержащие недопустимые символы (включая подчеркивания) теперь молча удаляются.