Dies ist meine erste Web-App-Bereitstellung, bei der alle möglichen Probleme auftreten.
Ich werde momentan eine Nginx + Gunicorn-Implementierung für die Django-App durchführen, aber diese Frage bezieht sich hauptsächlich auf Nginx-Konfigurationen. In einigen Fällen erhielt nginx Verbindungen und einen Proxy zum lokalen Server von gunicorn.
In den Nginx-Konfigurationen, wo steht, server_name
muss ich eine angeben? Ich habe nicht vor, Domain-Namen jeglicher Art zu verwenden, nur über die externe IP-Adresse meines Netzwerks (statisch) und die Port-Nummer, die abgehört werden soll.
Mein Wunsch ist es, dass ich, wenn ich auf so etwas zugreife http://xxx.xxx.xxx.xxx:9050
, die Site bekommen kann.
Das Folgende ist der Beispielcode, auf den ich die Konfigurationen als Referenz stützen werde.
server {
listen 80;
server_name WHAT TO PUT HERE?;
root /path/to/test/hello;
location /media/ {
# if asset versioning is used
if ($query_string) {
expires max;
}
}
location /admin/media/ {
# this changes depending on your python version
root /path/to/test/lib/python2.6/site-packages/django/contrib;
}
location / {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_connect_timeout 10;
proxy_read_timeout 10;
proxy_pass http://localhost:8000/;
}
# what to serve if upstream is not available or crashes
error_page 500 502 503 504 /media/50x.html;
}