CentOS 6.5下安装Python+Django+Nginx+uWSGI
1.安装Python3
1.1先安装zlib库及其他三方库
安装uWSGI时需要使用zlib,否则执行python uwsgiconfig.py --build时会报ImportError,就是因为在安装Python是没有包含zlib的原因,所以在安装最新的Python之间要把zlib安装好,在python2.x上据说是配置时指定--with-zlib选项,因为我使用python3.4,所以没有测试。
下载最新zlib源代码包:http://zlib.net/zlib-1.2.8.tar.gz
解压缩、编译安装
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make && make install
默认安装路径为 /usr/local/lib
1.2安装sqlite3
最开始没有手工安装sqlite3,因为系统里有自带的,但是在执行python manage.py runserver 0.0.0.0:8080时报错,说是找不到sqlite3相关的模块,后来通过一番Google,发现可能是Python编译时需要有sqlite3-devel,具体不明。只好先安装最新的sqlite3.8.4,再重新编译安装Python3.4.0,才没有报错。
下载最新sqlite3:http://www.sqlite.org/2014/sqlite-autoconf-3080403.tar.gz
解压缩、编译安装
tar zxf sqlite-autoconf-3080403.tar.gz
cd sqlite-autoconf-3080403
./configure
make && make install
1.3 Python基本安装
下载最新Python源代码包:https://www.python.org/ftp/python/3.4.0/Python-3.4.0.tar.xz
解压缩、配置编译安装
tar Jxf Python-3.4.0.tar.xz
cd Python-3.4.0
./configure
make && make install
默认安装在/usr/local/lib/python3.4目录下
2.安装Django框架
下载源码包Django-1.6.1.tar.gz,地址:https://www.djangoproject.com/download/1.6.1/tarball/
解压、安装
tar zxf Django-1.6.1.tar.gz
cd Django-1.6.1
python3 setup.py install
默认Django会安装在/usr/local/lib/python3.4/site-packages/django目录下
如要卸载django,如不知道Python3的安装目录,则使用如下命令确定site-packages的位置
python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"
进入site-packages目录直接删除django目录和Django-1.6.1-py3.4.egg-info文件即可
3.安装Nginx服务器
nginx编译安装时需要用pcre库,所以需要先安装pcre
3.1安装pcre库
下载地址:http://jaist.dl.sourceforge.net/project/pcre/pcre/8.34/pcre-8.34.tar.bz2 ——Perl的正则表达式库
解压缩、配置、编译安装
tar jxf pcre-8.34.tar.bz2
cd pcre-8.34
./configure --enable-utf8
make && make install
默认安装路径为 /usr/local/lib
3.2安装nginx
下载openssl最新的源码:http://www.openssl.org/source/openssl-1.0.1f.tar.gz
解压缩待用,不需要编译,假设解压到/tmp目录
tar zxf openssl-1.0.1f.tar.gz -C /tmp
下载nginx源代码包:http://nginx.org/download/nginx-1.5.8.tar.gz
解压缩、配置编译安装
tar zxf nginx-1.5.8.tar.gz
cd nginx-1.5.8
#配置nginx 开启ssl和gzip
./configure --with-pcre --with-http_stub_status_module --with-http_ssl_module --with-openssl=/tmp/openssl-1.0.1f --with-http_gzip_static_module --with-http_sub_module --with-cc=/usr/bin/gcc
make && make install
默认安装路径为 /usr/local/nginx
添加libpcre.so.1的连接,否则nginx启动时会报错
#如果是64位系统:
ln -s /usr/local/lib/libpcre.so.1 /lib64 #如果是32位系统:
ln -s /usr/local/lib/libpcre.so.1 /lib
启动nginx
/usr/local/nginx/nginx
浏览器中输入服务器IP地址,如有“Welocome to nginx”字样,则表示安装成功
停止nginx服务器
/usr/local/nginx/nginx -s stop
4.安装uWSGI
下载最新的2.0版本,地址:http://projects.unbit.it/downloads/uwsgi-2.0.1.tar.gz
解压、安装
tar zxf uwsgi-2.0.1.tar.gz
cd uwsgi-2.0.1
python3 uwsgiconfig.py --build
python3 uwsgiconfig.py --clean
cd ..
cp -R ./uwsgi-2.0.1 /usr/local/uwsgi
ln -s /usr/local/uwsgi/uwsgi /usr/bin/uwsgi
注意:在任意目录中执行uwsgi时,其默认工作目录为当前目录
5.设置Django+nginx+uWSGI
5.1 使用Django创建实例站点
假设当前目录为/var/www
django-admin.py startproject mysite
cd mysite
python3 manage.py syncdb
根据提示创建sqlite3数据库文件以及相关的表,当然还有超级用户
5.2 配置uWSGI
从https://github.com/nginx/nginx/blob/master/conf/uwsgi_params获取uwsgi的相关参数,保存为/var/www/mysite/uwsgi_params
从/usr/local/nginx/conf中复制亦可
5.2 nginx配置
创建新用户组
groupadd www
新建django目录
mkdir /usr/local/nginx/conf/django
创建新用户
useradd -s /sbin/nologin -g www -N -M nginx
useradd -s /sbin/nologin -g www -N -M uwsgi
chown -R nginx:www /usr/local/nginx
chown -R uwsgi:www /usr/local/uwsgi
在http配置节中添加
upstream django {
server unix:///tmp/mysite.sock;
}
server {
listen 8080;
server_name 192.168.56.104;
charset utf-8;
client_max_body_size 75M;
location / {
uwsgi_pass django;
include uwsgi_params;
}
}
nginx如果返回403错误,一般是因为文件系统访问权限问题造成,nginx不仅需要访问资源的可读权限,还需要其全部父目录的可执行权限.
以上里面漏写了uwsgi的启动
CentOS 6.5下安装Python+Django+Nginx+uWSGI的更多相关文章
- Install Python+Django+Nginx+UWSGI
一.软件环境: CentOS6.6_64bit 需要用到的软件: [root@django tools]# ll 总用量 33336 -rw-r--r-- 1 root root 7497785 3月 ...
- CentOS 6.5下安装Python 3.5.2(与Python2并存)
CentOS 6.5下安装Python 3.5.2(与Python2并存) 安装步骤 1,准备编译环境(环境不对,在安装过程中可能遇到各种问题.比如wget无法下载链接的文件) yum groupin ...
- 转载:CentOS 6.5下安装Python 3.5.2(与Python2并存)
原文:https://www.jb51.net/article/115370.htm 这篇文章主要给大家介绍了在CentOS 6.5下安装Python 3.5.2的方法教程,安装后的python3与P ...
- python Django Nginx+ uWSGI 安装配置
环境: CentOS7.python-3.5.3.Nignx 1.10.3 .Django 1.10.6.uWSGI 2.0.14 django项目目录:/var/webRoot/p1 项目结构: 基 ...
- Windows 下安装 Python + Django
Django是Python的一个Web开发框架,以下是介绍的是windows下的安装步骤, 作者的环境是Win10 ,Windows Server 也是一样的 以下是作者整理的步骤,也可以参考官方教程 ...
- CentOS 7.4 下安装Epel源和Nginx
EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL.CentOS和Scientif ...
- CentOS 6.8下安装python的redis支持库
方法很简单,SSH登录下输入: pip install redis 或者 easy_install redis 如果上面的方法不行的话,就要尝试编译安装了 wget https://pypi.pyth ...
- CentOS上部署Django+Nginx+Uwsgi环境
在CentOS上部署Django+Nginx+Uwsgi环境 奇谭 2016-09-01 评论 Linux python django nginx uwsgi VirtualEnv的作用:创建隔 ...
- CentOS系统下安装python3+Django
转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...
随机推荐
- Django开发 X-Frame-Options to deny 报错处理
本博客已停更,请转自新博客查看 https://www.whbwiki.com/318.html 错误提示 Refused to display 'http://127.0.0.1:8000/inde ...
- Flink 实践教程 - 入门(4):读取 MySQL 数据写入到 ES
作者:腾讯云流计算 Oceanus 团队 流计算 Oceanus 简介 流计算 Oceanus 是大数据产品生态体系的实时化分析利器,是基于 Apache Flink 构建的具备一站开发.无缝连接. ...
- mysql登录遇到ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
执行mysql -uroot -p,出现如下问题 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using pass ...
- [后端及服务器][WSL2(Ubuntu)+Docker]从零开始在WSL中安装Docker
目录 简介 WSL 安装 开启虚拟化(BIOS) 检查系统版本 安装WSL 老版本安装详情 简介 想花三篇文章写下从Windows(WSL)上开启Docker部署php/node/vue/html等项 ...
- go微服务框架Kratos笔记(六)链路追踪实战
什么是链路追踪 借用阿里云链路追踪文档来解释 分布式链路追踪(Distributed Tracing),也叫 分布式链路跟踪,分布式跟踪,分布式追踪 等等,它为分布式应用的开发者提供了完整的调用链路还 ...
- 说透 Docker:基础
既然要学习 K8S,相信各位读者都已经使用过 Docker 了,Docker 的入门是比较容易的,但 Docker 的网络和存储.虚拟化是相当复杂的,Docker 的技术点比较多,在本章中将会深入介绍 ...
- 菜鸡的Java笔记 - java 线程常用操作方法
线程常用操作方法 线程的命名操作,线程的休眠,线程的优先级 线程的所有操作方法几乎都在 Thread 类中定义好了 线程的命名和取得 ...
- [atARC122F]Domination
如果一个红石头在另一个红石头的左下方(包括左和下),那么在后者的限制满足时,前者也一定满足,因此可以删去前者,再将其按照$rx_{i}$排序,即有$rx_{1}<rx_{2}<...< ...
- 【IDEA】颜色主题 Color Theme
颜色主题 Color Theme 2020-09-08 08:35:44 by冲冲 1.本人的颜色主题:TasteTheRainbow.jar 链接:https://pan.baidu.com/s ...
- 【GitHub】本地代码上传
本地代码上传GitHub 2019-11-18 20:03:45 by冲冲 1.注册GitHub https://github.com/ 2.安装Git工具 https://git-for-win ...