在将域名配置为Django Web服务器时遇到问题

时间:2019-08-03 13:17:10

标签: python django nginx amazon-ec2

我已经创建了Django Web应用程序,并使用Nginx和超级用户将其部署到ec2实例,它运行良好。

我竞标新域,并配置了其AWS路由53。我能够看到我的域名正在映射到AWS实例。

但是当我尝试访问Django网络应用时,它显示的是404。

我已经在Nginx配置中更新了server_name参数

server {
    listen 80;
    server_name equitynotify.com;

  location {
        include proxy_params;
        proxy_pass http://unix:/**/***/***/source/prod/boo-gateway/boogateway/app.sock;
    }
    location /static/ {
        autoindex on;
        alias /******/path;
}

即使我添加了允许使用Django设置文件的域名,域名仍然无效。

任何想法我想念的是什么

更新: 当我尝试创建另一个示例应用程序并运行其端口9000时,我可以访问它http://www.equitynotify.com:9000/upcomingresults/,即使我将其创建的简单HTTP服务器8000端口也可以使用,也只有默认的80端口无法正常工作。可能是原因

1 个答案:

答案 0 :(得分:2)

Django的官方documentation建议将域名添加为ALLOWED_HOSTS作为www.your_domain.com到您的.your_domain.com中,以便指定完整的限定名或your_domain.com以覆盖{{1} }和www.your_domain.com。因此,您需要将.equitynotify.com添加到ALLOWED_HOSTS中。

编辑: 您还需要将django端口添加到proxy_pass。如果您未指定任何自定义端口号,则django的默认端口为8000。这是一个示例:

server {
  listen 80;

  server_name equitynotify.com;

  location / {
      proxy_pass http://localhost:8000/;
  }
}