Nginx baixa o arquivo, não exibindo o conteúdo

1

No meu site, eu tenho algum arquivo de validação que eu preciso colocar na raiz do documento que não tem extensão apenas "arquivo de validação",

Mas quando eu tento abri-lo do navegador, ele faz o download em vez de abrir, todos os outros arquivos com extensões como (.txt) podem ser abertos normalmente,

Minha configuração nginx (1.12):

server {
listen 80;
listen 443 ssl;

root /var/www/website;
error_log /var/log/nginx/website-error.log;
access_log /var/log/nginx/website-access.log;

index index.php index.html index.htm index.nginx-debian.html;

server_name website.com;
ssl_certificate /etc/ssl/website/nginx_bundle.crt;
ssl_certificate_key /etc/ssl/website/website.key;

location / {
    index index.php index.html;
    try_files $uri $uri/ =404 /index.php?q=$uri&$args;
}

# pass PHP scripts to FastCGI server
#
location ~ \.php$ {
    root /var/www/website;

    fastcgi_split_path_info ^(.+\.php)(.*)$;
    fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME /var/www/website/$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_script_name;

}

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
    deny all;
}
    
por MohammedSimba 24.06.2017 / 04:56

1 resposta

1

nginx determina o tipo de conteúdo da extensão. Se o arquivo não tiver extensão, ele usará o default_type .

Você pode definir explicitamente o tipo de conteúdo desse arquivo manipulando-o em seu próprio location block:

location = /validation-file {
    types {}
    default_type text/html;
}

Defina default_type como o arquivo contém, por ex. text/html ou text/plain , etc.

Veja este documento para saber mais.

    
por Richard Smith 24.06.2017 / 11:59