nginx: [emerg] konnte nicht bauen, die server_names_hash, sollten Sie erhöhen server_names_hash_bucket_size
Ich bin in den Prozess der Einrichtung eines neuen Servers. Der http-Server meiner Wahl ist NGINX. Ich möchte hinzufügen, um die Domäne audi-freunde-einbeck.de
als virtueller host. Ich habe bereits 2 andere domains drin und es funktioniert gut, aber wenn ich versuche, fügen Sie die oben genannte domain und den server starten es gibt mir Job failed. See system journal and 'systemctl status' for details.
Ich dachte, es war wegen der Bindestriche, also versuchte ich es einfach verschiedene andere domains, mit und ohne Bindestriche, aber kein Glück. Gleichen Fehler. was könnte die Ursache sein? Ich habe auch versucht einen Neustart, ich bin echt ratlos hier. Jegliche Hilfe würde sehr geschätzt werden.
Habe ich ein wenig rumprobiert und fand heraus, dass, wenn ich nur eine domain, es funktioniert. Aber wenn ich eine weitere domain in, er hält. Hier ist der Ausgang ein status:
[root@netzmelone nginx]# systemctl status nginx
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled)
Active: failed (Result: exit-code) since Sun, 16 Dec 2012 11:38:08 +0000; 7s ago
Process: 14239 ExecStop=/usr/sbin/nginx -g pid /run/nginx.pid; -s quit (code=exited, status=1/FAILURE)
Process: 14232 ExecStart=/usr/sbin/nginx -g pid /run/nginx.pid; daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 14242 ExecStartPre=/usr/sbin/nginx -t -q -g pid /run/nginx.pid; daemon on; master_process on; (code=exited, status=1/FAILURE)
Main PID: 14234 (code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/nginx.service
Dec 16 11:38:08 netzmelone nginx[14242]: nginx: [emerg] could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32
Dec 16 11:38:08 netzmelone nginx[14242]: nginx: configuration file /etc/nginx/nginx.conf test failed
- Haben Sie sich irgendwelche logs?
- Welche logs soll ich suchen?
- oder verwenden Sie einfach Ihren domain-Namen in Ihrer server_name.
- netzmelone ist ein wirklich guter name für einen server
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist wahrscheinlich passiert, weil der lange domain-name. Sie können dieses Problem beheben, indem Sie hinzufügen
oben Ihre
http
block (wahrscheinlich befindet sich in/etc/nginx/nginx.conf
). Ich zitiere aus der nginx-Dokumentation was ist zu tun, wenn diese Fehlermeldung angezeigt:In this case, the directive value should be increased to the next power of two
. Also in deinem Fall sollte es 64.Referenz: http://nginx.org/en/docs/http/server_names.html#optimization
/etc/nginx/nginx.conf
mit Schreibrechtenserver_names_hash_bucket_size 64;
sudo service nginx restart
Wenn der Fehler weiterhin besteht:
server_names_hash_bucket_size
in den Schritten 128, 256, 512 und so weiter (eine Steigerung um eine Potenz von 2 ist, jedes mal). zB.server_names_hash_bucket_size 128;
Das klingt vielleicht ein wenig zufällig, aber es hilft vielleicht ein nginx newb wie mich.
Ich bekam diese Fehlermeldung, wenn ich Links aus einem
;
auf dieserver_name
Linie.hatte:
Update:
Alle Richtlinien in der nginx-config-Dateien muss mit einem
;
Ich habe oft highlight
;
s in meiner Datei vor dem speichern/hochladen als Letzte Kontrolle nach der Bearbeitung.