Сокрытие записи Apache в HTTP-заголовке

Мы видим подобную проблему с nph-файлом, который действует как шлюз к Межсистемам Скрытое (база данных и сервер веб-приложения). Хорошо работает, пока мы не используем перезапись URL. Любой запрос, обработанный перезаписью URL, производит побочный заголовок, описанный выше (в или около нижней части контента ответа).

Мы пытались изолировать ошибку с маленьким nph-сценарием Perl и имели ту же проблему. Протестированный на различных серверах: Apache/2.2.11 на Ubuntu 9.04, Apache/2.2.9 на Debian 5.0 и Apache/2.0.52 на Red Hat EL 4.

Сценарий nph-test.cgi в регулярном cgi-каталоге-bin:

#!/usr/bin/perl -wT
use strict;
print "$ENV{SERVER_PROTOCOL} 200 OK\n";
print "Server: $ENV{SERVER_SOFTWARE}\n";
print "Content-Type: text/plain\n\n";

# Tell Perl not to buffer our output
$| = 1;

print "OK.";

Перезапись URL

RewriteEngine On
RewriteRule ^test/([0-9]+)$ /cgi-bin/nph-test.cgi

(в Apache .conf файл, под Directory /var/www/)

Ответ

OK.
HTTP/1.1 200 OK
Date: Mon, 07 Dec 2009 09:44:40 GMT
Server: Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.2 with Suhosin-Patch
Content-Length: 0
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/plain

Другие источники, описывающие те же или подобные проблемы:

Используя Довольную Длину работает на сценарий тестирования, но не решает нашу проблему, так как мы, очевидно, не можем изменить nph-cgi исполняемый файл, который идет с Межсистемами Скрытое.

Как Вы говорите, это должно, вероятно, быть отправлено Apache, но правила, размеченные по httpd.apache.org/bug_report.html, являются довольно пугающими. (У меня есть ограниченные знания Apache.)

1
задан 18 April 2011 в 16:28
2 ответа

Вы могли установить mod_security, свободное дополнение, которое позволит Вам изменять Сервер: заголовок к тому, чего когда-либо Вы желаете, например, Вы могли заставить его сказать "IIS" или просто заставить его сказать "Не Ваше дело!" :)

2
ответ дан 3 December 2019 в 22:10

Деталями как в подписи или заголовках управляют ServerTokens директива. Вы не можете показать меньше, чем "Apache", не изменяя исходный код и перекомпилировав Apache.

Вы не должны волноваться слишком много об этом, существуют другие способы узнать это, Вы используете Apache: ошибочные страницы (не всего 404, но и плохие заголовки, например) или запрос .ht файлы (отклоненный по умолчанию в Apache).

0
ответ дан 3 December 2019 в 22:10

Теги

Похожие вопросы