Heim > Fragen und Antworten > Hauptteil
Folgen Sie dem Tutorial und verwenden Sie nginx+uwsgi, um das Django-Projekt bereitzustellen. Beim Zugriff auf Port 80 wird angezeigt, dass 404 nicht gefunden wurde.
Das Django-Projektverzeichnis ist /home/wu/Documents/env/myblog
Die Dokumentstruktur unter dem Projektordner
myblog_nginx.conf
Datei
# mysite_nginx.conf
# the upstream component nginx needs to connect to
upstream django {
server unix:///home/wu/Documents/env/myblog/mysite.sock; # for a file socket
#server 127.0.0.1:8001; # for a web port socket (we'll use this first)
}
# configuration of the server
server {
# the port your site will be served on
listen 80;
# the domain name it will serve for
server_name .example.com; # substitute your machine's IP address or FQDN
charset utf-8;
# max upload size
client_max_body_size 75M; # adjust to taste
# Django media
location /media {
alias /home/wu/Documents/env/myblog/media; # your Django project's media files - amend as required
}
location /static {
alias /home/wu/Documents/env/myblog/static; # your Django project's static files - amend as required
}
# Finally, send all non-media requests to the Django server.
location / {
root /home/wu/Documents/env/myblog;
uwsgi_pass django;
include /home/wu/Documents/env/myblog/uwsgi_params; # the uwsgi_params file you installed
}
}
mysite_uwsgi.ini
Datei
# mysite_uwsgi.ini file
[uwsgi]
# Django-related settings
# the base directory (full path)
chdir = /home/wu/Documents/env/myblog
# Django's wsgi file
module = myblog.wsgi
# the virtualenv (full path)
home = /home/wu/Documents/env
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 10
# the socket (use the full path to be safe
socket = /home/wu/Documents/env/myblog/mysite.sock
# ... with appropriate permissions - may be needed
chmod-socket = 666
# clear environment on exit
vacuum = true
myblog_nginx.conf
Kein Problem beim Ändern von Port 8000 in der Datei
Nach dem Wechsel zu Port 80 laden Sie Nginx neu, uwsgi --ini mysite_uwsgi.ini
und besuchen dann
Hafenstatus:
Bitte geben Sie mir einen Rat. Ich habe dieses Problem schon lange nicht mehr gelöst. ! !
仅有的幸福2017-05-16 17:13:06
8000 端口显示的那个页面是 Django 自带的测试页,在 80 端口部署的时候应该不会出现,建议你自己写个页面部署到 80 端口试试
PHPz2017-05-16 17:13:06
是不是你其他地方配置了
server {
listen 80;
xxx
}
#导致没进入你的server块,看下nginx.conf,或者其他虚拟主机的配置文件。
另外你的
server {
/*这个去掉吧,或者你可以测试重复,host配置一个xxx.com,
这边也配置为xxx.com,相比于listen 80,会优先进入这个server块。*/
#server_name .example.com;
}
天蓬老师2017-05-16 17:13:06
nginx里面的location配置,include uwsgi_params;后面你没有uwsgi_pass 127.0.0.1:8000;