海外主机测评

您现在的位置是:首页 > 数据库 > 正文

数据库

Django部署——uwsgi+Nginx(超详细)(大家推荐个支持django的虚拟主机吧)

cds8202023-08-06数据库65
用Django写了个小网站,只能在自己本地跑一跑!这怎么行?听说可以部署在云服务器上,这样别人就可以访问了!从哪儿开始?就从Django开始吧!老规矩,按步骤:这里不讲Django项目实施过程,假设
用Django写了个小网站,只能在自己本地跑一跑!这怎么行?听说可以部署在云服务器上,这样别人就可以访问了!从哪儿开始?就从Django开始吧!老规矩,按步骤:这里不讲Django项目实施过程,假设你已经写了一个Django项目。

大家好,今天小编关注到一个比较有意思的话题,就是关于django部署云虚拟主机的问题,于是小编就整理了3个相关介绍django部署云虚拟主机的解答,让我们一起看看吧。

文章目录:

  1. Django部署——uwsgi+Nginx(超详细)
  2. 大家推荐个支持django的虚拟主机吧
  3. 如何在阿里云上部署django网站

一、Django部署——uwsgi+Nginx(超详细)

环境:

python3.6

centos 7

Django1.11

用Django写了个小网站,只能在自己本地跑一跑!这怎么行?听说可以部署在云服务器上,这样别人就可以访问了!

从哪儿开始孙搏茄?就从Django开始吧!老规矩,按步骤:

这里不讲Django项目实施过程,假设你已经写了一个Django项目,并且在本地 127.0.0.1:8000 能够跑起来。喏,给你个参考,项目大概长这样:

也就是项目目录下的settings.py文件,主要强调几个地方:

①关闭DEBUG模式:

②修改ALLOWED_HOSTS:

③配置静态文件存放路径:

修改好配置之后执行:

这个没什么说的。。。在自己的云服务器上装好这两个工具

安装好uwsgi后最好验证一下,验证方法:

创建一个test.py文件:

启动uwsgi服务器:

如果可以正常启动而不报错那就应该没问题,不放心的话再在终端验证一下:

在uwsgi.ini里进行如下配置:

找到nginx的配置文件夹,centos7的nginx配置文件在/etc/nginx下,该路径下有一个nginx.conf总配置文件,还有两个文件夹./银漏conf.d、./default.d,我们将nginx.conf复制一份到conf.d文件夹下,命名为nginx.conf(或者项目名.conf)进行如下修改(根则察据中文注释进行相应配置即可):

进入uwsgi.ini文件夹下执行:

在终端执行:

参考资料:

刘江的博客

博客园

知乎问答

无名Blog

自强学堂Django教程

Django文档

empty_xl Blog

二、大家推荐个支持django的虚拟主机吧

捌号主机有。不过价格比较高。你百度一下这个名字 捌号主机

可以咨询下中国尚网,问下客服有没有支持这个的虚拟主机。

虚拟主机一般没有支持django的,只能买独立服务器自己装了。

三、如何在阿里云上部署django网站

概述与目的

此帖介绍了如桥胡何(利用 Ubuntu 操作系统)在阿里云上启动和部署 Django 应用程序。这两个流程的详细步骤说明如下所述:

● 使用阿里云管理控制台启动您的第一个 Linux 实例

● 在此实例上安装和部署 Django 应用程序

关于 Django

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

前提条件

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

● 安装 pip

sudo apt-get install python-pip

● 安装 virtualenv

sudo pip install virtualenv

● 创建目录以存储您的 virtualenv

mkdir ~/.virtualenvs

● 安装 virtualenwrapper

sudo pip install virtualenvwrapper

● 将 WORKON_HOME 设置为您的 virtualenv 目录

导出 WORKON_HOME=~/.virtualenvs

● 将 WORKON_HOME 设置为您的 virtualenv 目录

导出 WORKON_HOME=~/.virtualenvs

● 将 virtualenvwrapper.sh 添加到 .bashrc

将此行添加到 ~/.bashrc 的末尾,以便加载 virtualenvwrapper 命令。/usr/local/bin/virtualenvwrapper.sh

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

2. 安装 git。

apt-get install git

3. 安装 Nginx 作为 Web 服务器,这样您便可在其之后运行您的应用程序。

Sudo apt-get install nginx

启动您的第一个 Linux 实例

接下来向您介绍使用阿里云管理控制台运行 ECS 实例的相关步骤。

1. 登录到您的帐户,然后导航到“产品与服务”部分下的“云服务器”。单击侧边栏菜单中的概览。这会显示运行中的实例列表。单击购买实例从任意地域购买实例,或者继续到下一步创建新实例。

2. 单击侧边栏菜单中的实例。在实例列表中选择所需地域,然后单击右上方栏中的创建实例。

3. 系统会将您重新定向到“产品购买”控制台,在此您需要选择偏好的资源包 - 对 ECS 实例和数据传输提供特殊定价的初级资源包或提供两种定价模式的高级购买资源包。您可敏州拦以根据自身需求选择订阅(按月或按年)或者按量付费。此案例中,我们选择了“按量付费”。

4. 在此窗口中,选择要在其中启动 ECS 实例的数据中心地域和可用性区域。如果选择了地域但未选择可用性区域,系统会将实例随机放在任何区域。

5. 现在您需要选择自己想要创建的实例类型。根据自身需求,从“生成”选项卡中选择生成实例类型。生成类型根据配置和所用的计算能力表示不同的实例类型。

6. 接下来,选择网络类型以迹樱启动您的 ECS 实例。可根据自身需求选择经典网络或专有网络。在经典网络中,阿里云以分布式方式分配 IP 地址。它适合于需要简单快速地使用 ECS 的用户。专有网络更多的是一种逻辑隔离私有网络,它支持专用连接。它适合于熟悉网络管理的用户。选择适当的网络类型后,选择网络计费类型:数据传输或固定带宽。在这两种情况下,您都需要设置网络带宽峰值(最大数据传输速率)。

7. 现在,您需要选择操作系统。每个选项下都提供了不同操作系统版本的列表。选择 Ubuntu。

8. 根据自身需要,从下拉菜单中选择系统磁盘类型。您还可以通过单击“添加磁盘”向此列表添加更多磁盘。

9. 在“安全设置”部分中,您可以创建密码以提高安全性,或者在此阶段跳过此步骤并稍后从管理控制台执行此操作。

10. 在“采购计划”部分中,键入您的实例名称并设置要启动的实例的数量。

11. 在“概览”部分查看配置详情和总价,然后单击立即购买。

12. 单击开通确认业务订单并启动实例。

13. 启动实例后,您可以在控制台的实例选项卡中查看该实例。

安装和部署 Django 应用程序

您已使用阿里云管理控制台创建和启动 ECS 实例,接下来让我们了解如何安装和部署 Django 应用程序。

1. 使用 ssh 命令登录到您的服务器

2. 输入密码

3. 通过创建一个新的 virtualenv 为部署 Django 应用程序设置环境:

mkvirtualenv DjangoApp

要退出新的 virtualenv,请使用 deactivate。

您可以使用 workon 在环境之间切换。要加载或在 virtualenv 之间切换,请使用 workon 命令:workon DjangoApp

4. 在您的当前环境中安装 Django

pip install Django

5. 使用 django-admin 命令创建样本项目并将目录更改为项目文件夹。

django-admin startproject todoApp

cd todoApp/

6. 迁移或引导您的数据库。

python manage.py migrate

7. 创建超级用户以访问管理面板。

python manage.py createsuperuser

8. 设置用户后,通过运行由 manage.py 操作的 runserver命令测试您的应用程序

python manage.py runserver 0.0.0.0:8000

您将看到以下内容在端口 8000 上运行

转至 /admin,这是您的管理面板,您可在此管理应用程序。

现在使用 Nginx 将您的应用程序置于 Web 服务器之后。

9. 创建数据库架构 开通 python 环境。

● 将目录更改为 Django 项目目录 

● 运行以下命令

python manage.py migrate

10. 收集所有静态文件(css、js 等)

● 运行以下命令以在任意特定位置收集所有静态文件

Python manage.py collectstatic --noinput

● 开发人员负责将 STATIC_URL 路径设置为将收集所有静态文件的位置。

● 这些变量在项目目录内的 setting.py 中定义。

1. STATIC_URL

2. STATICFILES_DIRS

3. STATIC_ROOT

11. 使用 uwsgi 服务器安装 uwsgi 库并启动服务器。

pip install uWSGI

● 创建用于部署 Django 应用程序的 ini 文件vim uwsgi.ini

● 将其保存到应用程序目录上的 uwsgi.ini。如需进一步了解如何编写 ini 文件,请参阅Python/WSGI 应用程序快速入门。运行此命令以启动您的应用程序。

uwsgi uwsgi.ini (您的 ini 文件)

12. 更改 nginx 配置文件以用于应用程序。

server   {       listen 80 default_server;         listen [::]:80 default_server ipv6only=on;         server_name localhost;  locatiON /static/   {         include uwsgi_params;         alias /root/todoApp/public/;  }  location  /    {        include uwsgi_params;        uwsgi_pass unix:/tmp/uwsgi.sock;     } }

13. 重启 nginx,随后您的应用程序将启动并在端口 80 上的 nginx 之后运行。

结论

在本文中,我们讨论了如何在阿里云上部署 Django 应用程序。概括地说,第一步是(利用 Ubuntu 操作系统)运行 ECS 实例。然后,您可以在此实例上安装和部署 Django 应用程序。请注意前提条件,确保顺利完成部署。

到此,以上就是小编对于django部署云虚拟主机的问题就介绍到这了,希望介绍关于django部署云虚拟主机的3点解答对大家有用。

发表评论

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~