我为我的django应用程序买了一个VPS。 我从来没有部署过django或任何其他应用程序。 我已经阅读了一些关于如何使用apache和wsgi以及其他一些选项gunicorn,ngix部署django的教程。 对我而言,这一切似乎都非常令人沮丧和难以理解。 我想知道如果我通过将debug更改为false来部署我的应用程序,创建数据库,插入它然后只是运行python manage.py runserver my-ip会发生什么。 这是一种不好的做法吗?

===============>>#1 票数:5

很容易学习如何部署Django项目。

首先,您应该知道如何安装Apachemod_wsgi

如果你使用Ubuntu

sudo apt-get install apache2 libapache2-mod-wsgi

Fedora (红帽)(未经测试)

yum install httpd mod_wsgi

然后,您应该知道如何将Apache2与您的Django项目相关联

<VirtualHost *:80>
    ServerName example.com
    ServerAdmin example@example.com

    Alias /media/ /home/tu/blog/media/

    <Directory /home/tu/blog/media>
        Require all granted
    </Directory>

    WSGIScriptAlias / /home/tu/blog/blog/wsgi.py

    <Directory /path/to/django/project/wsgifile>
    <Files wsgi.py>
        Require all granted
    </Files>
    </Directory>
</VirtualHost>

句子WSGIScriptAlias Apache2配置与Django wsgi.py文件中的Django项目相关联,您将看到包含的project.settings ,它是如何工作的

以下可能很容易理解它是如何工作的

* .conf - > wsgi.py - > settings.py - > urls.py和apps

只需像在ubuntu django server mod_wsgi搜索谷歌一样自己学习吧!

===============>>#2 票数:1

不要在生产中使用开发服务器。 只是不要。

至少服务于gunicorn:

$ pip install gunicorn
$ cd your_project
$ gunicorn project.wsgi  # gunicorn now runs locally on port 8000

并将nginx(或apache)作为反向代理:

server {
    location / {
        proxy_pass http://127.0.0.1:8000;
    }
}

部署Django(就像任何其他应用程序一样)本身就是一个世界,掌握它需要时间。 但是,不要在生产中运行开发服务器。

  ask by Marijus translate from so

未解决问题?本站智能推荐: