django网站的部署

部署

部署1: python启动,用于测试和本地开发

  1. 安装包

    • sudo apt update
    • apt install mysql-server mysql-client
  2. 设置远程访问mysql
    (1) 查找 mysql.conf
    find / -name mysql.cnf
    (2)注释mysql.cof文件的bind_address
    /etc/mysql/mysql.conf.d
    (3)切换到mysql数据库
    grant all privileges on . to ‘root’@’%’ identified by ‘root123’ with grant option; 设置用户root 和密码root123
    flush privileges; 刷新数据
    (4) 重启
    service mysql restart/start/stop

  3. 修改django的配置文件
    (1) 修改settings.py文件中的DEBUG=FALSE,ALLOWED_HOST=[‘*’]
    (2)修改urls.py
    (a) from django.views.static import serve
    url中加入以下配置
    url(r’^static/(?P.*) ,serve,documentroot:settings.STATICROOT),url(rmedia/(?P.) ′ , s e r v e , “ d o c u m e n t r o o t ” : s e t t i n g s . S T A T I C R O O T ) , u r l ( r ′ m e d i a / ( ? P . ∗ ) ’, serve, {“document_root”: settings.MEDIA_ROOT}),
    (b)setting中
    STATIC_ROOT = os.path.join(BASE_DIR, ‘static’)
    (c)url中修改首页访问的地址
    url(r’^$’, views.home)

  4. 修改首页的启动地址
    修改工程目录中的url ,并修改url(r’^$’, views.home)

  5. 安装pip3
    apt install python3-pip

  6. 安装必备库
    pip3 install django==1.11
    pip3 install pymysql
    pip3 install Pillow

  7. 查看进程
    netstat -lntp

  8. 上传项目,以及数据库

    • 在home创建app文件,将项目上传。
    • 并将django里的settings里的database,修改
  9. 启动项目
    python3 manage.py runserver 0.0.0.0:80

部署2:

(使用nginx+uwsgi配置django项目)

  1. 安装nginx
    sudo apt-get install nginx

  2. 查看nginx的状态
    systemctl status nginx 查看nginx的状态
    systemctl start/stop/enable/disable nginx 启动/关闭/设置开机启动/禁止开机启动
    service nginx status/stop/restart/start

  3. 安装uwsgi
    pip install uwsgi

  4. nginx的配置文件中加载自定义的nginx的配置文件

    vim /etc/nginx/nginx.conf
    在server中加入以下配置:
    include /home/app/conf/*.conf;

  5. 配置自定义的nginx配置文件,在自己的项目conf中,新建appnginx.conf,配置

server {
        listen       80;
        server_name 47.106.171.59 localhost;
        access_log /home/app/log/access.log;
        error_log /home/app/log/error.log;

        location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:8890;
        }
        location /static/ {
            alias /home/app/axf/static/;
            expires 30d;
        }

    }

6.配置uwsgi,名称为uwsgi.ini,和上面的在同一文件夹下配置

[uwsgi]
    # variables
    projectname = axf
    newprojectname = axf
    base = /home/app

    # config
    #plugins = python
    master = true
    #protocol = uwsgi
    processes = 4
    #env = DJANGO_SETTINGS_MODULE=%(projectname).settings
    pythonpath = %(base)/%(projectname)
    module = %(newprojectname).wsgi
    socket = 127.0.0.1:8890
    logto = %(base)/log/uwsgi.log这里写代码片

7.配置6的简化版

[uwsgi]
    master = true
    processes = 4
    pythonpath = /home/app/axf/
    module = axf.wsgi
    socket = 127.0.0.1:8890
    logto = /home/app/log/uwsgi.log

8.启动方式: uwsgi –ini uwsgi.ini

下面是一个基于Linux环境的Django网站部署示例教程: 1. 确保你已经完成了上一节中的环境配置和MySQL安装步骤。 2. 在Linux服务器上创建一个新的目录,用于存储你的Django项目文件。假设我们将项目放在`/var/www/myproject/`目录下: ``` sudo mkdir /var/www/myproject ``` 3. 将你的Django项目文件复制到该目录下。你可以通过Git clone或者手动复制文件的方式。 4. 进入项目目录: ``` cd /var/www/myproject ``` 5. 激活虚拟环境(如果有): ``` source path_to_virtualenv/bin/activate ``` 6. 安装项目依赖: ``` pip install -r requirements.txt ``` 7. 配置Nginx服务器: - 安装Nginx: ``` sudo apt install nginx ``` - 创建一个新的Nginx配置文件: ``` sudo nano /etc/nginx/sites-available/myproject ``` - 在文件中添加以下配置(注意替换`your_domain`和`your_project_path`): ``` server { listen 80; server_name your_domain; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root your_project_path; } location / { include proxy_params; proxy_pass http://unix:/your_project_path/myproject.sock; } } ``` - 保存并关闭文件,然后创建一个符号链接: ``` sudo ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/ ``` - 检查Nginx配置是否正确: ``` sudo nginx -t ``` - 重新加载Nginx配置: ``` sudo systemctl reload nginx ``` 8. 配置Django项目的静态文件和数据库: - 收集静态文件: ``` python manage.py collectstatic ``` - 运行数据库迁移: ``` python manage.py migrate ``` 9. 运行Django项目的Gunicorn服务器: - 安装Gunicorn: ``` pip install gunicorn ``` - 启动Gunicorn服务器: ``` gunicorn myproject.wsgi:application --bind unix:/your_project_path/myproject.sock ``` 10. 现在,你可以通过浏览器访问你的Django网站,使用你的域名或服务器IP地址。 这就是一个基于Linux环境的Django网站部署示例。根据你的实际情况,可能需要根据项目的具体需求进行一些调整和修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值