Abra o arquivo ngx_http_fancyindex_module.c
e encontre esta linha:
r->headers_out.status = NGX_OK;
Substitua por:
r->headers_out.status = NGX_HTTP_OK;
Compile Nginx.
Isso é tudo que você precisa.
Eu tenho um problema com o meu servidor nginx 1.4.0 rodando no Gentoo Linux. Eu criei uma pasta com o fancyindex on; parâmetro e enquanto eu estou abrindo a página, a conexão parece nunca acabar. Navegador mostra que a página ainda está carregando e encurta localhost no linux mostra que fancyindex retorna todos menos o rodapé. O rodapé é recebido após 1 minuto aprox e a conexão termina. Minha pasta / var / www / public / é um link simbólico para / home / me / public_html.
Aqui está o meu nginx.conf:
user nginx nginx;
worker_processes 1;
error_log /var/log/nginx/error_log info;
events {
worker_connections 1024;
use epoll;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
client_max_body_size 128M;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
ignore_invalid_headers on;
fancyindex_exact_size off;
index index.php index.html;
server
{
listen 80;
server_name mywebsite.com
root /var/www;
location /
{
allow x.x.x.x;
deny all;
}
location /public
{
allow all;
fancyindex on;
}
location ~ \.php$
{
fastcgi_pass unix:/var/run/php-fpm-www.sock;
include fastcgi.conf;
}
include security.conf;
}
}
Aqui está o meu security.conf:
location ~ /\.ht
{
deny all;
}
Os logs são claros, o processo nginx não bloqueia (não usa 100% cpu) ulimit -n return 1024
A conexão é semelhante a:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8"/><style type="text/css">body,html {background:#fff;font-family:"Bitstream Vera Sans","Lucida Grande","Lucida Sans Unicode",Lucidux,Verdana,Lucida,sans-serif;}tr.e {background:#f4f4f4;}th,td {padding:0.1em 0.5em;}th {text-align:left;font-weight:bold;background:#eee;border-bottom:1px solid #aaa;}#list {border:1px solid #aaa;width:100%;}a {color:#a33;}a:hover {color:#e33;}</style>
<title>Index of /public/</title>
</head><body><h1>Index of /public/</h1>
<table id="list" cellpadding="0.1em" cellspacing="0">
<colgroup><col width="55%"/><col width="20%"/><col width="25%"/></colgroup>
<thead><tr><th>File Name</th><th>File Size</th><th>Date</th></tr></thead>
<tbody><tr class="o"><td><a href="../">Parent directory/</a></td><td>-</td><td>-</td></tr><tr class="e"><td><a href="Foltest.zip">Foltest.zip</a></td><td> 844M</td><td>13-May-2013 14:06</td></tr>
SOME TIME HERE
</tbody></table></body></html>
Existe uma diretiva de rodapé para o fancyindex, mas o padrão é "nada", então não deveria estar processando um. Para garantir que não, tente adicioná-lo abaixo da opção fancyindex_exact_size:
fancyindex_footer ""