django - 如何使用 wsgi_mod 在 ubuntu 中托管 django 项目

标签 django apache ubuntu

我在/var/www/firstproject 中创建了示例 django 项目,我使用 this link 进行了配置

firstproject.conf in etc/apache2/sites-available

但我得到了禁止的错误。
如何解决错误并帮助托管我的项目?

最佳答案

你没有得到关于你的错误的正确解释。

所需软件包:

  • Apache 2
  • libapache2-mod-wsgi
  • Django

  • 创建空项目
  • cd/var/www
  • sudo virtualenv 文件夹名称
  • cd 文件夹名称
  • sudo django-admin.py startproject 项目名称
  • cd 项目名称
  • 须藤纳米项目名称.wsgi

  • 项目名称.wsgi 文件
     import os 
     import sys 
     sys.path.append('/var/www/foldername/projectname') 
     os.environ['DJANGO_SETTINGS_MODULE'] = 'projectname.settings' 
     from django.core.wsgi import get_wsgi_application 
     application = get_wsgi_application()  
    
  • cd/etc/apache2/sites-available
  • 须藤纳米项目名称.conf

  • 项目名称.conf 文件
    <VirtualHost *:80> 
        ServerName www.example.com   
        ServerAlias  www.example.com   
        ServerAdmin webmaster@localhost 
        DocumentRoot /var/www/foldername/projectname 
        WSGIScriptAlias / /var/www/foldername/projectname/projectname.wsgi 
        Alias /static /var/www/foldername/static/static_only 
        ErrorLog ${APACHE_LOG_DIR}/error.log 
        CustomLog ${APACHE_LOG_DIR}/access.log combined 
     </VirtualHost> 
    

    须藤纳米/etc/hosts

    您需要将以下行添加到主机文件中
    your_ip www.example.com
    

    转到您的项目位置并运行 python manage.py collectstatic
    现在您的本地文件副本位于 static_only 文件夹中

    可能是您收到“尝试写入只读数据库”错误,这是权限问题,因此您需要运行以下命令。
    chown www-data:www-data /var/www/foldername
    chown www-data:www-data /var/www/foldername/projectname/db.sqlite3
    

    现在在浏览器上输入 www.example.com

    关于django - 如何使用 wsgi_mod 在 ubuntu 中托管 django 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29943744/

    相关文章:

    python - ModuleNotFoundError : No module named 'django.utils.six'

    python - Nginx、Uwsgi、Django 问题

    php - 表单提交后,在输入中显示新值而不是缓存的值

    apache - 如何仅使用 .htaccess 文件设置 ssl

    apache - 寻找 apache 构建选项

    从 C 调用期望文件

    linux - (nodemon) 应用程序崩溃 - 在开始之前等待文件更改

    python - Django:使用过滤器随机查询一条记录的最快方法

    django - Django基于类的 View 上的success_url的反向提示循环导入

    ubuntu - 在 ubuntu linux 中以 root 权限运行 VS Code 不再起作用