如何在阿里云上部署 Django 应用程序

如何在阿里云上部署 Django 应用程序,第1张

关于 Django

Django 是一个用 Python 语言写的开源 Web 框架,可帮助开发人员在构想形成后仅数小时内启动 Web 应用程序。它遵循模型视图模板 (MVT) 来构建应用程序,这可降低 Web 开发的复杂性,同时可让开发人员集中精力编写应用程序。它为网站地图、内容管理、用户鉴权、RSS 提要及其他任务提供开箱即用的设置。一些高流量网站使用 Django 是因为它能够快速、灵活地进行调整,从而可满足流量波动高峰期的需求。

前提条件

为 Python 应用程序安装 virtualenv 和 virtualenv wrapper,目的在于为 Python 项目创建独立的环境。

1.启动服务器,先把python3当作python默认启动,需要删除默认python link文件,重新建立连接关系。

rm /usr/bin/python

ln -s /usr/bin/python3 /usr/bin/python

2.

apt-get update    #升级软件包

apt-get install python3-pip #安装pip

pip install --upgrade pip #升级pip

安装 virtualenv

sudo pip install virtualenv

创建目录以存储您的 virtualenv

mkdir ~/.virtualenvs

安装 virtualenwrapper

sudo pip install virtualenvwrapper

将这两行添加到 ~/.bashrc 的末尾,以便加载 virtualenvwrapper 命令。

export WORKON_HOME=$HOME/.virtualenvs

source /usr/local/bin/virtualenvwrapper.sh

退出,然后重新打开您的 shell,或者使用 .bashrc or source ~/.bashrc 命令重新加载 .bashrc,然后一切准备就绪。

apt-get install lrzsz #可以直接把文件从桌面到xshell里

apt-get install unzip #用于解压zip压缩包

创建一个新的虚拟环境

mkvirtualenv xxxxx

退出虚拟环境

deactivate

进入虚拟环境

workon xxxxx

pip freeze >requirements.txt#导出该环境下所有依赖到requirements.txt文件

pip install -r requirements.txt #用requirements.txt进行安装

然后进入你的项目,前提在虚拟环境下,python manage.py runserver 0.0.0.0:8000

还有一点是比较重要的,要进入你的阿里云,然后设置你的安全组配置

然后添加安全组规则

如图所示,你就可以在浏览器上访问你的网站了 公网IP+8000(端口)

它采用类似策略模式的实现方法,该类有一个字符串的成员变量,用于存放该函数对象对应的函数名字,在ProcessFunction类中主要实现了process方法

此方法的功能是通过协议层从传输层中读取并解析出调用的参数,然后再由具体的函数对象提供的getResult函数计算出结果!

参考如下

假如项目的目录tree为:

mysite:

manage.py

mysite:

__init__.py settings.py urls.pywsgi.py

blog(建立的应用程序):

models.py views.py test.py __init__.py templates

开始配置:

1、在外部的mysite目录下(也就是项目的根目录)建立static目录

2、打开settings.py,添加:

import os

STATIC_URL = '/static/'

STATICFILES_DIRS = (

os.path.join(os.path.dirname(__file__), '../static/').replace('\\','/'),

(

3、打开urls.py,添加(注意:假如在blog应用中新建了一个urls.py文件,那么应该添加到blog目录下的urls.py文件,我曾经在这个坑里纠结了很久):

import settings

urlpatterns = patterns(

url( r'^static/(?P<path>.*)$', 'django.views.static.serve',

{ 'document_root':settings.STATIC_ROOT }),

)

使用:

假设要在模板(存放在templates文件中的)里面导入外部/home/fudaoji/mysite/static/js/jequery.js文件,那么可以直接

<script type="text/javascript" src='../../static/js/jquery.js'></javascript>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11233818.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存