按照教程用nginx+uwsgi部署django项目,监听8000端口正常,80端口访问时显示404 not found.
django项目目录为/home/wu/Documents/env/myblog
项目文件夹下文档结构
myblog_nginx.conf文件
# 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文件
# 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文件中改为8000端口时没问题
改为80端口后,raload,restart nginx,uwsgi --ini mysite_uwsgi.ini,然后访问
求指点,搞了好久都没解决这个问题,感激不尽!!!
欧阳克2016-11-14 11:22:05
是不是你其他地方配置了
server { listen 80; xxx } #导致没进入你的server块,看下nginx.conf,或者其他虚拟主机的配置文件。 另外你的 server { /*这个去掉吧,或者你可以测试重复,host配置一个xxx.com, 这边也配置为xxx.com,相比于listen 80,会优先进入这个server块。*/ #server_name .example.com; }