Ubuntu Server部署Apache+Django

说明:

    操作系统:Ubuntu Server 16.04.1 LTS 64位

    Python版本:Python3.5.2

    Django版本:Django2.0.5

开始部署工作:

1.首先进入到ubuntu系统中,切换root:

    sudo su

2.更新安装工具:

    apt-get update

3.安装python3及一些依赖:

    apt-get install python3.5  
    apt-get install python3-pip apache2 libapache2-mod-wsgi-py3
#安装pip3、apache等等
    pip3 install --upgrade pip #更新pip3,小编帮朋友部署的时候遇到过他的系统直接是pip而没有pip3,如果提示不存在pip3就改成 pip install --upgrade pip,以下均改成pip即可

    pip3 install virtualenv #创建虚拟环境所需要的一些东西

4.小编把项目创建在/var/www/下,为了方便,先cd进入到/var/www/,在这个目录下创建虚拟环境:

    virtualenv venv #venv为虚拟环境名,可自定义

激活虚拟环境:

    source venv/bin/activate


激活后前面会有个(venv)

PS:退出虚拟环境的命令是:

    deactivate

5.在激活虚拟环境状态下,安装django到虚拟环境:

    pip install django   # python虚拟环境,都是pip

6.创建django项目:

    django-admin.py startproject myproject #myproject是我的项目名字,读者可以自定义

7.cd进入项目目录,小编的是myproject/,会发现里面还有一个myproject目录,这对学过django的应该不陌生,创建django应用:

    django-admin startapp test1  #test1是小编创建的应用名字,读者可以自定义

小编在这里创建了static和templates目录,用来存放静态文件和模板


8.在setting.py里更改一些设置:

添加:

STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(BASE_DIR, 'static/')

TEMPLATES列表里添加:

'DIRS': [os.path.join(BASE_DIR, 'templates')],

还有设置:

ALLOWED_HOSTS = ['*'] #‘*’修改成你的服务器IP

还有在urls.py配置匹配的url,views.py里添加相应的函数,用来一会测试,这里小编就省略了

9.重点来了,配置Apache:

    vim /etc/apache2/sites-available/000-default.conf

在000-default.conf添加:

        Alias /templates /var/www/myproject/templates     #myproject是项目名字,下同
        Alias /static /var/www/myproject/static

        <Directory /var/www/myproject/templates>
                Require all granted

        </Directory>

        <Directory /var/www/myproject/static>
                Require all granted

        </Directory>

        <Directory /var/www/myproject/myproject>
                <Files wsgi.py>
                        Require all granted
                </Files>
        </Directory>
        WSGIDaemonProcess myproject python-home=/var/www/venv python-path=/var/www/myproject 
#python-home为虚拟环境,python-path为django项目
        WSGIProcessGroup myproject

        WSGIScriptAlias / /var/www/myproject/myproject/wsgi.py


10.保存之后,检测Apache是否有语法错误:

    apache2ctl configtest

11.重启Apache:

    systemctl restart apache2

12.在浏览器中输入url测试是否部署成功,如果没反应或者失败查看错误日志:

    cat /var/log/apache2/error.log 


Ubuntu是一个自由开源的操作系统,其中有很多的工具和服务可以用于搭建与开发Web应用。其中,常用的Web应用栈是使用Nginx作为Web服务器,UWSGI作为应用程序服务器,Django作为Web框架,MySQL作为关系型数据库。 要安装和配置这些服务,需要进行以下步骤: 1. 安装Ubuntu操作系统,可以选择最新版本的Ubuntu LTS或者最新的Ubuntu发行版。 2. 安装Nginx服务,并配置Nginx服务器来处理并转发HTTP请求。这里可以使用apt-get install命令来安装Nginx包。 3. 安装UWSGI服务,并配置UWSGI服务器来处理Django应用程序。这里可以使用pip install命令来安装UWSGI包。 4. 安装Django,并编写一个基本的Django应用程序。然后配置UWSGI服务器以运行Django应用程序。可以使用pip install命令来安装Django包。可以使用此教程 - https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html 5. 安装MySQL数据库服务,并配置MySQL服务器以使用Django应用程序。可以使用apt-get install命令来安装MySQL包。 6. 在Django应用程序中配置MySQL数据库连接参数,并创建 MySQL数据库及表。 7. 配置Nginx服务器以使用UWSGI服务器来处理Django应用程序。可以使用上面的教程来完成这一步骤。 8. 启动Nginx和UWSGI服务器,并测试Django应用程序是否可以访问。 在进行以上的步骤时,需要注意安全措施,防止 Web 应用程序被攻击和入侵。同时,也需要进行充分的测试,保证 Web 应用程序的稳定性和可用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值