python-django框架-电商项目-项目部署_20191127

十年热恋 提交于 2019-12-05 19:37:37

python-django框架-电商项目-项目部署:

 

uwsgi作为web服务器:

  • 在pycharm中启动项目:使用python manage.py runserver
  • 这个runserver是django提供的开发的时候的web服务器,这个服务器只在开发的时候使用,部署的时候不会,部署的时候使用uwsgi,
  • uwsgi
  • 这是一个遵循wsgi协议的web服务器,
  • ###################            报错            ###########################
  • 安装:pip install uwsgi,这个转入自己的虚拟环境,
  • 报错:AttributeError: module 'os' has no attribute 'uname'
  • 解决:
  • 定位到uwsgiconfig.py文件中,首先import platform后,将os.unam()都改为platform.uname()即可。
  • os.uname()是不支持windows系统的。platform模块是支持任何系统。
  • 2.下载uwsgi离线安装
  • https://pypi.python.org/pypi/uWSGI/ 
  • 解压后,进入目录下
  • python setup.py install
  • 报错:Exception: you need a C compiler to builduWSGI
  • 安装了MinGW的c编译器,但是还是不行,
  • ################################################################
  • 下面我尝试在Linux系统部署项目
  • 安装:pip install uwsgi,这个转入自己的虚拟环境,
  • Ubuntu pip3安装uwsgi报错
  • Running setup.py install for uwsgi ... error
  • 解决方法:sudo apt-get install -y python3-dev
  • 测试uwsgi是否安装成功完成:uwsgi --version
  • 安装成功了,
  • uwsgi这个安装好了,怎么用它启动我们的项目?
  • uwsgi的配置:
  • 项目部署的时候,一定要把settings下面的DEBUG改为FALSE
  • DEBUG = False
  • ALLOWED_HOSTS = ['*']
  • 使用uwsgi还需要进行一个配置,
  • 在项目目录下,新建一个文件uwsgi.ini,这个ini就是配置文件的后缀
  • uwsgi的启动和停止,
  • 启动:uwsgi --ini uwsgi.ini    (后面是配置文件的路径) #不加--ini也可以
  • 停止:uwsgi --stop uwsgi.pid
  • 重启:uwsgi --reload uwsgi.pid
  • 启动的时候报错:
  • uwsgi: option ‘–http’ is ambiguous
  • getopt_long() error
  • 解决:sudo apt-get install uwsgi uwsgi-core uwsgi-plugin-python#uwsgi-plugin-python一定要安装
  • 但是还是不行,
  • 又找到一个解决方案:Ubuntu 安装  libxml*
  • 然后我找到了方法:sudo apt-get install libxml*
  • 但是又报错了:报错:无法安装XXX, 需要依赖于XXX,那就先去安装这个依赖的XXX
  • 然后开始找这个报错的解决方案:
  • 首先需要安装 aptitude:sudo apt-get install aptitude
  • 然后使用 aptitude 安装包:sudo aptitude install libxml*
  • 发现这个方法也不对,!!!!!!
  • 不对,还是要理清思路 !!!!!!!!!!!!!!

#############################################################

重新理清思路:

第一步:安装uwsgi

  • 进入虚拟环境:
  • pip install uwsgi
  • uwsgi --version,看到版本就安装好了,

第二步:uwsgi的配置

  • 1,项目部署的时候,一定要把settings下面的DEBUG改为FALSE
  • DEBUG = False
  • ALLOWED_HOSTS = ['*']
  • 2,在项目目录下,新建一个文件uwsgi.ini,这个ini就是配置文件的后缀
#添加配置选择
[uwsgi]
#配置和nginx连接的socket连接
#socket=127.0.0.1:8080
#直接做web服务器使用 python manage.py runserver ip:port
http=127.0.0.1:8080
#配置项目路径,项目的所在目录
chdir=/home/andy/bj18/dailyfresh
#配置wsgi接口模块文件路径
wsgi-file=dailyfresh/wsgi.py
#配置启动的进程数
processes=4
#配置每个进程的线程数
threads=2
#配置启动管理主进程
master=True
#配置存放主进程的进程号文件
pidfile=uwsgi.pid
#配置dump日志记录
daemonize=uwsgi.log
#设置虚拟环境的路径
virtualenv=/home/andy/.virtualenvs/lq_py3
View Code
  • 3,

 

 

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!