资讯专栏INFORMATION COLUMN

亲身验证切实可行的python项目部署方案

dackel / 454人阅读

摘要:目标在浏览器输入回车进入到项目主页概念项目应用该文章中的项目为服务高并发处理的好稳定是服务器与框架之间一种简单而通用的接口项目部署部署环境准备确保项目能够运行安装服务用去安装安装启动验证打开浏览器输入安装务必用去安装安装验证

目标 : 在浏览器输入 www.python1.com 回车

   进入到Django项目主页

概念

Django项目(Web应用)
该文章中的django项目为fruitday

Web服务

nginx : 高并发处理的好

Apache : 稳定
LNMP : Linux Nginx MySQL Python/PHP/Perl
LAMP : Linux Apache MySQL Python/PHP/Perl

uwsgi
是Web服务器与Web框架之间一种简单而通用的接口

项目部署

部署环境准备

确保Django项目能够运行

安装Web服务nginx(用apt-get去安装)

安装
sudo apt-get install nginx

启动
sudo /etc/init.d/nginx restart

验证
打开浏览器输入: 127.0.0.1:80 -> Welcome to Nginx

安装uwsgi(务必用pip3去安装)

安装
sudo pip3 install uwsgi

验证
uwsgi --http :9000 --chdir /home/tarena/myproject/fruitday/ --module fruitday.wsgi

在线商城部署

配置uwsgi(配置文件)
和nginx通信端口 自身启动占用的端口

在项目目录(manager.py所在路径)中新建uwsgi启动文件:fruitdayUwsgi.ini

在配置文件中写入如下内容:
[uwsgi]

指定和nginx通信的端口

socket=127.0.0.1:8001

项目路径

chdir=/home/tarena/myproject/fruitday

wsgi.py路径

wsgi-file=fruitday/wsgi.py

进程数

processes=4

线程数

thread=2

uwsgi自身占用端口

stats=127.0.0.1:8080

配置nginx(配置文件)

sudo -i

cd /etc/nginx/sites-enabled/

vi projectNginx.conf
server{

# 指定本项目监听端口,浏览器输入端口
listen 80;
# 域名
server_name www.python1.com;
# 指定字符集
charset utf-8;

# 指定收集静态文件路径
location /static{
    alias /home/tarena/myproject/fruitday/static;

}

# 和uwsgi通信端口和通信文件
location /{
  include uwsgi_params;
  uwsgi_pass 127.0.0.1:8001;

}

}

拷贝uwsgi_params到项目根目录

sudo -i

cd /etc/nginx

cp uwsgi_params /home/tarena/myproject/fruitday

改掉nginx默认的server(80)

sudo -i

cd /etc/nginx/sites-enabled

vi deault #把listen的端口由80改为800
server {
listen 800 default_server;
listen [::]:80 default_server;

重启nginx服务
sudo /etc/init.d/nginx restart

收集静态文件

在settings.py文件中添加路径(STATIC_ROOT)
STATIC_ROOT = "/home/tarena/myproject/fruitday/static"

收集静态文件

cd /home/tarena/myproject/fruitday

python3 manage.py collectstatic

添加本地DNS解析

sudo -i

vi /etc/hosts
127.0.0.1 www.python1.com

重启网络服务
sudo /etc/init.d/networking restart

uwsgi启动项目

切换到项目目录
cd /home/tarena/myproject/fruitday

利用uwsgi启动项目
uwsgi --ini fruitdayUwsgi.ini

打开浏览器,输入 www.python1.com
直接进入项目主页

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/40312.html

相关文章

  • 亲身验证切实可行python项目部署方案

    摘要:目标在浏览器输入回车进入到项目主页概念项目应用该文章中的项目为服务高并发处理的好稳定是服务器与框架之间一种简单而通用的接口项目部署部署环境准备确保项目能够运行安装服务用去安装安装启动验证打开浏览器输入安装务必用去安装安装验证 目标 : 在浏览器输入 www.python1.com 回车 进入到Django项目主页 概念 Django项目(Web应用)该文章中的django项...

    siberiawolf 评论0 收藏0
  • 一位大佬亲身经历总结:简历和面试技巧

    摘要:我觉得了解简历和面试的技巧可以帮助你更好的去学习重要的知识点以及更好地去准备面试以及面试,说实话,我个人觉得这些东西还挺重要的。在本文里,我将介绍我这段时间里更新简历和面试的相关经历。 分享一篇很不错的文章!本文作者曾经写过《Java Web轻量级开发面试教程》和 《Java核心技术及面试指南》这两本书。我觉得了解简历和面试的技巧可以帮助你更好的去学习重要的知识点以及更好地去准备面试以...

    pingan8787 评论0 收藏0
  • 架构 - 收藏集 - 掘金

    摘要:浅谈秒杀系统架构设计后端掘金秒杀是电子商务网站常见的一种营销手段。这两个项目白话网站架构演进后端掘金这是白话系列的文章。 浅谈秒杀系统架构设计 - 后端 - 掘金秒杀是电子商务网站常见的一种营销手段。 不要整个系统宕机。 即使系统故障,也不要将错误数据展示出来。 尽量保持公平公正。 实现效果 秒杀开始前,抢购按钮为活动未开始。 秒杀开始时,抢购按钮可以点击下单。 秒杀结束后,按钮按钮变...

    Riddler 评论0 收藏0
  • 阿里巴巴敏捷研发探索与实践

    摘要:阿里巴巴内部也在不断进行敏捷实践。在加入阿里之前,从事多年敏捷教练工作,负责组织的敏捷实践和转型的指导工作。 摘要: 今天你敏捷了吗?敏捷产品开发提倡快速迭代、小步快跑,以便更灵活地应对变化,目前逐渐演变为行业潮流。阿里巴巴内部也在不断进行敏捷实践。 点此查看原文:http://click.aliyun.com/m/43286/ 今天你敏捷了吗?敏捷产品开发提倡快速迭代、小步快跑,以便...

    zorro 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<