Ich kann nicht herausfinden, wie ich umleiten /soll index.html. Ich habe die Threads zu Serverfault durchgesehen und ich glaube, ich habe jeden Vorschlag ausprobiert, einschließlich:
- Schreiben Sie die Anweisungen innerhalb von neu
location / index index.htmlauf derserverEbene innerhalblocation /und innerhalb des statischen Inhalts- Verschieben von
node.jsProxy-Anweisungen nachlocation ~ /istatt nach innenlocation /
Offensichtlich stimmt irgendwo anders in meiner Konfiguration etwas nicht. Hier ist meine nginx.conf:
worker_processes 1;
pid /home/logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
error_log /home/logs/error.log;
access_log /home/logs/access.log combined;
include sites-enabled/*;
}
und meine Serverkonfiguration befindet sich in sites-enabled
server {
root /home/www/public;
listen 80;
server_name localhost;
# proxy request to node
location / {
index index.html index.htm;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:3010;
proxy_redirect off;
break;
}
# static content
location ~ \.(?:ico|jpe?g|jpeg|gif|css|png|js|swf|xml|woff|eot|svg|ttf|html)$ {
access_log off;
add_header Pragma public;
add_header Cache-Control public;
expires 30d;
}
gzip on;
gzip_vary on;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_proxied any;
gzip_min_length 1000;
gzip_disable "msie6";
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
}
Alles andere funktioniert gut. Anforderungen werden korrekt an den Knoten weitergeleitet und statischer Inhalt wird korrekt bereitgestellt. Ich muss nur in der Lage sein , Anfragen gemacht weiterleiten /zu /index.html.
"GET / HTTP/1.1" 404. Nichts deutet darauf hin, dass es sogar versucht, index.html zu treffen. Der Anruf wird schließlich an meinen Knotenserver weitergeleitet, auf dem eine Fehlerseite angezeigt wird.
root htmlim Standortblock erreichen wollen. Befindet sich Ihre index.html in / home / www / public / html? Ich habe nur absolute Pfade verwendet.