web-dev-qa-db-fra.com

Nginx ne montre que la page d'accueil

J'essaie de configurer un hôte virtuel simple, ne servant que des fichiers statiques. Le problème, c'est que, dans ce cas, jorum.dev affiche la page d'accueil par défaut de nginx, par opposition à jorum.dev/index.html.

Nginx a été installé sous Homebrew sous Mac OS X Mountain Lion.

les hôtes

127.0.0.1       jorum.dev

jorum.dev

server {
    listen          80;
    server_name     jorum.dev;

    location / {
        root        ~/Sites/jorum;
        index       index.html index.htm;
    }
}

nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    gzip            on;
    gzip_disable    "msie6";
    gzip_min_length 1100;
    gzip_vary       on;
    gzip_proxied    any;
    gzip_buffers    16 8k;
    gzip_types      text/plain text/css application/json application/x-javascript text/xml application/xml application/rss+xml text/javascript image/svg+xml application/x-font-ttf font/opentype application/vnd.ms-fontobject;

    server_tokens off;

    client_max_body_size    4096k;
    client_header_timeout   10;
    client_body_timeout     10;
    keepalive_timeout       10 10;
    send_timeout            10;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
20
jlowgren

Inclusions manquantes dans nginx.conf

include /usr/local/etc/nginx/sites-enabled/*;

http://wiki.nginx.org/CoreModule#include

16
freestyler

le paquet ubuntu nginx est livré avec une default sites-available qui prend en charge la répartition d'hôte par défaut. Supprimez simplement le lien par défaut et il devrait charger votre site à la place.

13
ThorSummoner

Pour les autres personnes venant sur ce fil et ayant déjà essayé la réponse de @ freestyler, mais obtenant toujours l'écran par défaut de nginx, essayez de renommer le fichier default situé dans /etc/nginx/sites-available/ en default.txt. Je recommande pas supprimer le fichier, car cela vous aide à expliquer quoi faire dans votre prochain fichier .conf.

5
skolind

Pour moi, c’est que j’avais oublié de lier le site à IPv6 et que mon PC était connecté à IPv6.

J'ai simplement ajouté listen [::]:80; à l'objet serveur, avant que je ne dispose que de listen 80;.

Cela faisait que Nginx montrait le site aussi si des connexions étaient établies en utilisant IPv6.

0