我是python和django的初学者。但是,我正在尝试创建一个服务器来部署我的应用程序。但是当我想访问我的应用程序时,我总是得到默认的nginx页面“欢迎使用nginx”。
此服务器在Ubuntu 12.04上(精确) 我用apt安装了nginx,python,django和uwsgi包。 接下来我创建了一个django项目到/ var / www / djangoApps和一个django应用程序到/ var / www / djangoApps / testApp
这是我的/ etc / nginx / sites-available / djangoApps:
server {
listen 80
server_name django.pommesky.com;
rewrite ^(.*) http://www.django.pommesky.com/$1 permanent;
}
server {
listen 80;
server_name www.django.pommesky.com;
access_log /var/log/nginx/djangoApps_access.log;
error_log /var/log/nginx/djangoApps_error.log;
location /media {
alias /var/www/djangoApps/media/;
}
location /static {
alias /var/www/djangoApps/static/;
}
location / {
uwsgi_pass unix:///run/uwsgi/app/djangoApps/socket;
include uwsgi_params;
}
}
这是我的/etc/uwsgi/apps-available/djangoApps.ini:
env = DJANGO_SETTINGS_MODULE=djangoApps.settings
module = django.core.handlers.wsgi:WSGIHandler()
chdir = /var/www/djangoApps
socket = /run/uwsgi/djangoApps/socket
logto = /var/log/uwsgi/djangoApps.log
uwsgi日志没有显示任何内容,一切似乎运行良好,它由产生的uWSGI工作者完成... 但是/var/log/nginx/djangoApps_access.log;和/var/log/nginx/djangoApps_error.log;不存在,这很奇怪。 我无法弄清楚我的配置有什么问题。 请帮帮我......
答案 0 :(得分:8)
域django.pommesky.com
看起来并不活跃,因此Nginx可能会在HTTP request header.(第14.23节)中收到错误Host:
字段的请求。所以Nginx服务于default
全能页面。
您可以通过删除default
链接,然后重新启动守护程序来禁用/etc/nginx/sites-enabled/default
Nginx网站。
sudo rm -v /etc/nginx/sites-enabled/default
sudo service nginx restart
您可以通过重新创建链接来重新启用:
sudo ln -sf /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default
sudo service nginx restart
您可以尝试的另一件事是设置Bind或其他DNS守护程序,以便为您所需的所有子域提供虚假 pommesky.com
区域,并在开发您的DNS时使用该DNS现场。
当然,您也可以向托管服务提供商注册该域名,然后使用其控制面板中的DNS区域编辑器设置子域名以及您想要的所有PTRs所需的公共IP地址。 / p>