Por que o nginx está exibindo o tipo MIME incorreto para solicitações no alias de diretório?

4

Se houver uma maneira de fazer essa tarefa típica sem usar aliases, sou totalmente a favor.

Eu quero que todas as solicitações na URL /minesweeper/* sejam extraídas de um diretório completamente diferente das outras solicitações. A configuração a seguir FUNCIONA, os arquivos são exibidos, mas o tipo MIME é application / octet-stream em vez do que deve ser (ou seja, text / css). Com o tipo MIME incorreto, é impossível para os navegadores da Web renderizar os estilos CSS no documento.

nginx.conf:
http {
    index index.html
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    ...
}

virtual.conf:
server {
    listen       *:80;
    server_name  djmp.org www.djmp.org;
    root   /home/devsites/djmp.org/public_html/;
    index  index.html;


    location ~ ^/minesweeper($|/.*) {
        alias /home/michael/sites/minesweeper$1;
    }
}
    
por Michael Butler 06.05.2013 / 04:13

2 respostas

1

Usar um alias seria bom, mas você não precisa da porcaria dele.

location /minesweeper/ {
    alias /home/michael/sites/minesweeper/;
}
    
por 06.05.2013 / 05:14
0

Eu consertei o problema NÃO usando um alias. TAMBÉM eu tive que excluir o cache no Chrome ou então não estava realmente recebendo os novos tipos de MIME! Eu verifiquei no Firefox e funcionou.

server {
    listen       *:80;
    server_name  djmp.org www.djmp.org;
    root   /home/devsites/djmp.org/public_html/;
    index  index.html;
    include       /etc/nginx/mime.types;

    location /minesweeper {
            root   /home/michael/sites/;  # choose the parent directory here
            index  index.html index.htm;
    }

}
    
por 06.05.2013 / 04:32

Tags