nginx отдает неправильный хедер Content-Type
Andrew Kopeyko
kaa at zvuki.ru
Thu Oct 29 14:51:17 MSK 2009
Станислав wrote:
> Andrew Kopeyko пишет:
>> On Wed, 28 Oct 2009, Станислав wrote:
>>
>>> Здравствуйте!
>>
>> Вечер добрый!
>>
>>> Вот недавно столкнулся с проблемой...
>> ....
>>>
>>> location ^~ /forum/style_images/ {
>>> root /var/www/blahblah.ru;
>>> types {
>>> text/plain php php3 php4 php5 phtml phps pl pm;
>>> }
>>> }
>>>
>>> и тут пдыщ......
>> ....
>>> Content-Type: application/octet-stream
>>> Content-Length: 31730
>>> Last-Modified: Sat, 18 Apr 2009 09:48:59 GMT
>>> Connection: close
>>> Accept-Ranges: bytes
>>>
>>> в mime.types четко написано
>>
>> Ещё чётче написано в
>> http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#types -
>> types будут переопределяться, а не добавляться к вышеописанным.
>>
>> Задайте в этом location все нужные вам mime-types, "отрезав" опасные -
>> и будет вам счастье.
>>
> Ясно... читал ман, но изначально воспринял для себя его как-то иначе...
Почему?
В nginx такое поведение "стандартно" для всех директив.
> Если я правильно понял, самый простой вариант будет, это создать второй
> файл mime-types и там исключить то, что мне не нужно...
Да, так должно сработать.
Но вам уже правильно заметили - обрабатываются fastcgi не nginx'ом,
поэтому решение вашей проблемы, вероятнее, лежит не в подмене
content-type, а в запрете отдавать текст "fastcgi-скриптов" (а если там
будет вписан пароль к БД\удалённому серверу?), что возможно сделать
описание отдельного location с regexp'ом. Например:
location ~* /forum/style_images/.*\.cgi {
root /noтexistent;
}
и заменить (иначе - не сработает)
- location ^~ /forum/style_images/ {
+ location /forum/style_images/ {
--
Best regards,
Andrew A. Kopeyko <kaa at zvuki.ru>
http://www.zvuki.ru/
More information about the nginx-ru
mailing list