返回顶部
首页 > 资讯 > 后端开发 > Python >Nginx+uWSGI+DJango+P
  • 674
分享到

Nginx+uWSGI+DJango+P

NginxuWSGIDJango 2023-01-31 05:01:44 674人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

本文出自:Http://www.mpyun.com/一、安装所需工具yum -y install GCc gcc-c++ rpm-build Mysql* libtool-ltdl* libtool automake autoconf li

本文出自:Http://www.mpyun.com/

一、安装所需工具

yum -y install GCc gcc-c++ rpm-build Mysql* libtool-ltdl* libtool automake autoconf libtool make setuptool

二、编译安装python2.7.5

1. 下载Python2.7.5,保存到 /data/Qtongmon/software

http://www.python.org/ftp/python/


2. 解压文件

tar xvf Python-2.7.5.tar.bz2


3. 创建安装目录

mkdir /usr/local/python27


4. 安装python

./configure --prefix=/usr/local/python27 --enable-shared

make

make install


5. 修改老版本的ln指向(注意:这里修改后,可能会影响yum的使用)

mv /usr/bin/python /usr/bin/python2.4.3

ln -s /usr/local/python27/bin/python /usr/bin/python


6.yum是使用python写的,升级新版本的python后会导致yum不可用,如下为运行yum时的错误提示:

There was a problem importing one of the Python modules

required to run yum. The error leading to this problem was:

No module named yum

解决方法:

查找yum文件,并编辑此py文件

[root@TC-Boss ~]# which yum

/usr/bin/yum

[root@TC-Boss ~]# vi /usr/bin/yum

#!/usr/bin/python

改为:

whereis python出来的结果(老版本的python)

#!/usr/bin/python2.6

然后保存OK.



二、安装uWSGI

下载uWSGI的最新版

wget http://projects.unbit.it/downloads/

因为我最后采用xml配置Django app 的部署,所以编译 uWSGI 时候需要把libxml编译进去

yum -y install libxml2-devel

剩下的就简单了

tar zxvf uwsgi-1.9.17.tar.gz

cd uwsgi-1.9.17

make

cp uwsgi /usr/sbin/uwsgi

如果遇到错误:python: error while loading shared libraries: libpython2.7.so.1.0:

cannot open shared object file: No such file

按如下方式解决:

vim /etc/ld.so.conf.d/python2.7.conf

加入以下内容:/usr/local/python27/lib (实际的python安装路径下的lib目录)

保存退出后运行:

ldconfig

即可


至此 uWSGI 就算是安装完成了,下一步安装 Nginx


三、Nginx 安装

参考另一篇文章:http://galean.blog.51cto.com/7702012/1268352

注意编译的时候要加上参数:--with-cc-opt='-O3' --with-cpu-opt=opteron

[root@htuidc nginx-1.4.2]# ./configure --with-http_stub_status_module --prefix=/usr/local/nginx --with-cc-opt='-O3' --with-cpu-opt=opteron


四、安装mysql-python

wget http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz/download

tar zxvf MySQL-python-1.2.3.tar.gz

cd MySQL-python-1.2.3

python setup.py install


ImportError: No module named setuptools 解决方案 :

wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz

tar zxvf setuptools-0.6c11.tar.gz

cd setuptools-0.6c11

python setup.py build

python setup.py install


/usr/bin/ld: cannot find -lpython2.7错误,解决方案 :

cd /usr/lib

ln -s /usr/local/python27/lib/libpython2.7.so libpython2.7.so

ll -a|grep python

lrwxrwxrwx. 1 root root 39 Oct 1 16:39 libpython2.7.so -> /usr/local/python27/lib/libpython2.7.so

drwxr-xr-x. 3 root root 4096 May 3 15:15 python2.6


出错:error: command 'gcc' failed with exit status 1

处理方法:

yum -y install mysql-devel

安装完成,到你的python安装目录下的site-packages目录里检查以下文件是否存在,如果存在即代表安装成功了

linux:MySQL_python-1.2.3c1-py2.6-linux-i686.egg

测试方法

1)运行命令python进入python运行环境

2)输入以下python代码进行测试

import MySQLdb

test=MySQLdb.connect(db='mydb',host='localhost',user='root',passwd='p')

cur = test.cursor()

cur.execute('show databases;')

for data in cur.fetchall():

print data


五、安装DjanGo

wget https://www.djangoproject.com/m/releases/1.5/Django-1.5.4.tar.gz

tar xzvf Django-1.5.4.tar.gz

cd Django-1.5.4

python setup.py install


测试Django安装

终端中输入 python,进入python交互模式,输入如下:

>>>import django

django.VERSioN

正常情况会显示版本号码。


六、nginx配置

server {

 listen  80; ## listen for ipv4; this line is default and implied

 #listen  [::]:80 default ipv6only=on; ## listen for ipv6

 server_name blog.hysia.com;

 access_log /var/log/nginx/blog.hysia.com-access.log ;

 error_log /var/log/nginx/blog.hysia.com-error.log ;


 location / {

     uwsgi_pass 127.0.0.1:8630;

     include uwsgi_params;

 }

}


七、配置Django app

配置很简单,几乎不用改动你app的任何文件。

首先在你的app目录创建个wsgi.py 文件,内容如下:

import os,sys

if not os.path.dirname(__file__) in sys.path[:1]:

 sys.path.insert(0, os.path.dirname(__file__))

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'


from django.core.handlers.wsgi import WSGIHandler

application = WSGIHandler()


然后在app目录创建个django.xml文件,作为uWSGI运行的配置文件,内容如下:

<uwsgi>

 <Socket>127.0.0.1:8630</socket>

 <chdir>/data/WEB/vpssite</chdir>

 <pythonpath>..</pythonpath>

 <module>wsgi</module>

</uwsgi>


最后一步,运行 uWSGI 就行了,如下:

uwsgi -x /data/web/vpssite/django.xml

这样你的Django app 就用 uWSGI hold住了。django.xml的配置远不止这些比如log文件,内存限制等等,具体的可以参考 http://projects.unbit.it/uwsgi/wiki/Example


--结束END--

本文标题: Nginx+uWSGI+DJango+P

本文链接: https://lsjlt.com/news/188656.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Nginx+uWSGI+DJango+P
    本文出自:http://www.mpyun.com/一、安装所需工具yum -y install gcc gcc-c++ rpm-build mysql* libtool-ltdl* libtool automake autoconf li...
    99+
    2023-01-31
    Nginx uWSGI DJango
  • Nginx+uwsgi+Django (
    Nginx+uwsgi+Django (Python web环境)nginx配置文件[root@DB02 rc3.d]# vi /application/nginx/conf/nginx.conf user  root; worker_pr...
    99+
    2023-01-31
    Nginx uwsgi Django
  • django+uwsgi+nginx部署
    django+uwsgi+nginx部署   1.介绍:   在网上看了很多教程,但自己部署了很久都没有成功,这篇博文记录自己所踩过得坑。   2.环境: 1 Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-13...
    99+
    2023-01-30
    django uwsgi nginx
  • nginx+uwsgi部署django项
    1、django项目部署前需要生成admin的静态资源文件 (1)生成admin的静态资源文件   # 关闭debug模型 DEBUG = False # 允许所有域名访问 ALLOWED_HOSTS = ['*'] # 静态资源路径 ...
    99+
    2023-01-31
    nginx uwsgi django
  • Django+Nginx+uwsgi服务器部署
    一、安装 uwsgi uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议,旨在提供专业的 Python web应用发布和开发。Nginx中HttpUwsg...
    99+
    2024-04-02
  • django生产环境搭建(uWSGI+django+nginx+python+MySQL)
    目录1、系统环境,必要知识2、安装python3.6.53、安装Django4、安装uWSGI5、安装nginx6、MySQL安装配置7、编写一个简单的博客系统1、系统环境,必要知识 #cat /etc/red...
    99+
    2022-05-18
    django生产环境搭建 django生产环境 uWSGI django nginx python MySQL
  • centos+nginx+uwsgi部署django项目上线
    目录Python安装django相关库的安装nginx安装&配置(处理静态请求和代理动态请求到uwsgi)uwsgi安装&配置标题关闭setting.py的DEBUG...
    99+
    2024-04-02
  • Django + Uwsgi + Nginx 的生产环境部署
    使用runserver可以使我们的django项目很便捷的在本地运行起来,但这只能在局域网内访问,如果在生产环境部署django,就要多考虑一些问题了。比如静态文件处理,安全,效率等等,本篇文章总结归纳了一下基于uwsgi+Nginx下dj...
    99+
    2023-01-30
    环境 Django Uwsgi
  • nginx + uwsgi + django 优化和参数设置
    最近用python写了一个web系统,用的框架是nginx + uwsgi + django + oracle。服务器用的是centos 7.web API的吞吐量要求是200/s。使用postman对单次web API调用进行测试,时间约...
    99+
    2023-06-02
  • Django+Nginx+uWSGI定时任务怎么实现
    今天小编给大家分享一下Django+Nginx+uWSGI定时任务怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。摘要...
    99+
    2023-06-28
  • ubuntu Django + Uwsgi + Nginx 的生产环境部署
    使用runserver可以使我们的django项目很便捷的在本地运行起来,但这只能在局域网内访问,如果在生产环境部署django,就要多考虑一些问题了。比如静态文件处理,安全,效率等等,本篇文章总结归纳了一下基于uwsgi+Nginx下dj...
    99+
    2023-01-31
    环境 Django ubuntu
  • Nginx+uwsgi+Django部署代码怎么编写
    Nginx+uwsgi+Django部署代码怎么编写,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Nginx+uwsgi+Django部署代码安装uwsgi1....
    99+
    2023-06-04
  • Nginx + uWSGI + Pyt
    Nginx:Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性:作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提...
    99+
    2023-01-31
    Nginx uWSGI Pyt
  • Centos8下django项目部署 nginx+uwsgi的教程
    1.虚拟环境virtualenv安装 1.安装virtualenv  pip3 install virtualenv 2.创建目录,把项目文件传过来  mkdir My  cd M...
    99+
    2022-06-04
    Centos8 django项目部署 nginx uwsgi django项目部署
  • 聊聊Django+uwsgi+nginx服务器部署问题
    目录准备工作安装anaconda:安装需要的组件创建django程序(本地)使用文件传输工具将django程序传输到服务器部署工作配置uwsgi配置nginx配置ssl证书以提供ht...
    99+
    2024-04-02
  • Django+Nginx+uWSGI定时任务的实现方法
    目录摘要使用uWSGI的cron使用socket.bind锁使用uWSGI的mule摘要 在Nginx和uWSGI还没配置时,单独在url.py使用apscheduler设置定时任务...
    99+
    2024-04-02
  • nginx+uwsgi+flask+su
    环境 - Linux: Ubuntu 16.04 - uWSGI 2.0.18 - Flask 1.0.2 - supervisor 3.2.0 - nginx/1.8.1 首先区分几个概念 WS...
    99+
    2023-01-31
    uwsgi nginx su
  • Nginx+Python+uwsgi+D
    1,系统环境CentOS 6.x 或者更高版本Python 3.6.x 2,Python3环境的安装首先安装依赖包yum -y groupinstall “Development tools”yum -y install zlib-deve...
    99+
    2023-01-31
    Nginx Python uwsgi
  • Ubuntu系统搭建django+nginx+uwsgi的教程详解
    1. 在开发机上的准备工作 1.确认项目没有bug。 2.用pip freeze > requirements.txt将当前环境的包导出到requirements.txt文件中,方便在部署的时候安装。 3.将项目上...
    99+
    2022-06-04
    Ubuntu 搭建django+nginx+uwsgi ubuntu 系统搭建
  • nginx+uwsgi+djangorestframework+flower+celery+redis
    nginx+uwsgi+djangorestframework+flower+celery+redis配置如下:nginx server配置, 没有https,注释掉ssl开头配置即可.server {   &...
    99+
    2023-01-31
    djangorestframework uwsgi nginx
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作