Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Отключение header'ов

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Ivalar
Отправлено: 06 Ноября, 2012 - 09:20:20
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Есть php-файл, который принимает по http команды от "моста", обрабатывает их и выплевывает обратно html-страницу с закодированным ответом примерно такого вида:

-B--004E4F4A7777AN3S4HAHVQSETGMU AV8OAJDNKOQWABSH07C78401FF000007 C6000007C60002272C0002760F--E-

При этом у страницы имеется куча заголовков, подставляемых автоматически:
HTTP/1.1 200 OK
Date: Thu, 06 Nov 2012 10:41:57GMT
Server: Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8k PHP/5.3.3
X-Powered-By: PHP/5.3.3
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Last-Modified: Thu, 06 Nov 2012 10:41:57GMT
Set-Cookie: PHPSESSID=AN3S4HAHVQSETGMUAV8OAJDNKOQWABSH; path=/
Content-Length: 94
Content-Type: text/html; charset=windows-1251

Таким образом получается, что заголовки страницы весят больше, чем сам ответ на команду. В условиях жесткой экономии траффика нужно уйти от этой лишней информации. Как и какие из этих заголовков можно безболезненно поотключать?

(Отредактировано автором: 06 Ноября, 2012 - 09:21:55)

 
 Top
caballero
Отправлено: 06 Ноября, 2012 - 10:55:59
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




обратись к разработчику неведомого "моста"
тут экстрасенсов нет чтобы догадатся шо сие такое


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Ivalar
Отправлено: 06 Ноября, 2012 - 12:13:27
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




caballero пишет:
обратись к разработчику неведомого "моста"
тут экстрасенсов нет чтобы догадатся шо сие такое

Как минимум один экстрасенс тут есть - я. Мои экстрасенсорные способности говорят, что текст выше ты не читал, а решил сделать +1 пост.

В решении данного вопроса "мост" не играет никакой роли, можешь забыть про него. С тем же успехом я могу запустить браузер, вбить адрес php-файла с добавлением GET-параметра и получить ответ (страницу) от apache-сервера. Вопрос лишь в заголовках этой страницы. Какой-нибудь "X-Powered-By" мне нафиг не вперся, но два десятка байт съедает.
 
 Top
EuGen Администратор
Отправлено: 06 Ноября, 2012 - 12:31:53
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Проще прочесть HTTP-спецификацию (6; 6.1;6.2) - там сказано как раз о заголовках.
Подсказка: здесь поднимается такой же вопрос (но по отношению к request-сообщению).


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Мелкий Супермодератор
Отправлено: 06 Ноября, 2012 - 12:32:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




В зависимости от клиента и желаемого эффекта можно попробовать выкинуть всё, кроме первого заголовка (без него это уже не http будет).
http://nl1.php.net/manual/en/fun...eader-remove.php

По конфигам апача и php порезать разговорчивые режимы.
expose_php = Off в php.ini
http://httpd[dot]apache[dot]org/docs/2[dot]2[dot][dot][dot]tml#servertokens
Сессионная кука - вам лучше знать, нужна ли сессия.
Content-* - если http у вас только транспорт над другим протоколом, можно зарезать, полезной нагрузки в этом случае мало.
Остаётся кучка заголовков, запрещающих на разный лад кэширование


-----
PostgreSQL DBA
 
 Top
Ivalar
Отправлено: 06 Ноября, 2012 - 12:50:50
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




Спасибо за помощь. Этого должно быть достаточно для решения моей задачи.

UPDATE:
Поспешил с выводами. Почитал, попробовал на практике и смог сократить заголовки лишь до такого вида:
HTTP/1.1 200 OK
Date: Tue, 06 Nov 2012 11:58:05 GMT
Server: Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8k PHP/5.3.3
Content-Length: 62
Content-Type:

Эти заголовки не удаляются через header_remove() и их значения не изменяются через header(). Точнее, через header() получилось занулить лишь один заголовок Content-Type. Что странно, в ходе ползания по интернетам, наткнулся на рекомендацию обнуления заголовка Server в целях безопасности с помощью конструкции header('Server: '), которая, как уже сказал, у меня ни к чему не привела.

(Отредактировано автором: 06 Ноября, 2012 - 14:04:40)

 
 Top
DeepVarvar Супермодератор
Отправлено: 06 Ноября, 2012 - 14:21:07
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Ivalar пишет:
header('Server: '), которая, как уже сказал, у меня ни к чему не привела.
Мелкий пишет:
http://httpd.apache.org/docs/2.2...tml#servertokens
 
 Top
Ivalar
Отправлено: 06 Ноября, 2012 - 15:12:46
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Дек. 2011  


Помог: 0 раз(а)




DeepVarvar пишет:
Ivalar пишет:
header('Server: '), которая, как уже сказал, у меня ни к чему не привела.
Мелкий пишет:
http://httpd.apache.org/docs/2.2...tml#servertokens

Спасибо, почитал повнимательнее. Сделаю через .htaccess с соответствующими конфигами.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB