CentOS6下配置Django+Apache+mod_wsgi+Sqlite3过程
0. 安装环境:
CentOs版本: VMWare中CentOs 6.4
Apache版本: Httpd 2.2.15 http://httpd.apache.org/
Sqlite3版本: Sqlite3 3.8.11.1 http://www.sqlite.org/
Python版本: Python 3.4.0 https://www.python.org/
Django版本: Django 1.8.5 https://www.djangoproject.com/community/
mod_wsgi版本: Mod_wsgi 4.4.15 https://pypi.python.org/pypi/mod_wsgi
1. 安装CentOS
注意:
网络适配器选择
网络配置 /etc/sysconfig/network-scripts/ifcfg-eth0
克隆镜像
删除 /etc/sysconfig/network-scripts/ifcfg-eth0 中的MAC地址
删除关联 /etc/udev/rules.d/70-persistent-net.rules
重启系统 reboot
搭建服务器前:
确认是否已安装:gcc, gcc-c++, zlib
关闭防火墙
关闭SELinxu
检查80端口是否被占用
2. 安装Apache服务器
Apache就是Linux中的httpd yum install httpd httpd-devel 测试
service httpd start
在浏览器输入IP,出现下图则成功

查看是否已安装某软件(针对rpm和yum方式安装的,无法查看源码安装的)
rpm -qa httpd
3. 安装Sqlite3
tar -zxvf sqlite-autoconf-.tar.gz
cd sqlite-autoconf-
./configure
make
make install
4. 安装Python3.4
yum install zlib zlib-devel tar -zxvf Python3.4.0.tgz
cd Python3.4.0 vim Modules/Setup.dist
找到
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
取消该行注释 ./configure --enable-shared make && make install #炒鸡慢......
运行会出错
# python3.4
python3.4: error while loading shared libraries: libpython3.4m.so.1.0: cannot open shared object file: No such file or directory
解决方案:
新建下面文件
vim /etc/ld.so.conf.d/python2.7.conf
加入内容:
/usr/local/lib
保存退出后运行:
ldconfig
为python3.4创建连接文件,取代原来的python
rm -f /usr/bin/python (只是删除连接,python2.6本身并没有删除)
ln /usr/local/bin/python3.4 /usr/bin/python
此时输入python会打开python3.4
修改后yum命令可能无法使用了
解决方案:
vim /usr/bin/yum
修改#!/usr/bin/python 为 #!/usr/bin/python2.6 (系统默认安装的)
5. 安装Django
tar -zxvf Django-1.8.5.tgz
cd Django-1.8.5
python setup.py #比较慢... 测试
service httpd stop django-admin startproject xxx
cd xxx
python manage.py runserver 0.0.0.0:80
可以通过本地机浏览器访问虚拟机IP,出现It worked!

6. 安装mod_wsgi
安装mod_wsgi-3.4.tar.gz会报错
安装mod_wsgi-4.4.15.tar.gz tar -zxvf mod_wsgi-4.4.15.tar.gz
cd mod_wsgi-4.4.15
./configure
make && make install 生成编译好的mod_wsgi.so文件 /usr/lib/httpd/modules/mod_wsgi.so
7. 配置Apache和Django
参考文档: How to use Django with Apache and mod_wsgi
a 配置httpd.conf
vim /etc/httpd/conf/httpd.conf 导入模型(一堆LoadMoudule处)
LoadModule wsgi_module modules/mod_wsgi.so 添加目录(最末尾)
<Directory /var/www/html/mysite/mysite>
<Files wsgi.py>
order deny,allow
allow from all #Apache小于2.4版本, 2.4及以上版本则将两句改为:require all granted
</Files>
</Directory>
b 部署Django
cd /var/www/html
django-admin startproject mysite Django 1.4以上版本会自动在mysite/mysite下创建wsgi.py 重启httpd服务器 service httpd restart 浏览器输入IP即可
CentOS6下配置Django+Apache+mod_wsgi+Sqlite3过程的更多相关文章
- Win7下配置Django+Apache+mod_wsgi+Sqlite
搭建环境: win7 64位 Django 1.8.5 Apache2.4.17 mod_wsgi_ap24py27.so Python2.7.9 1 安装Apache 下载Apache Haus版, ...
- 部署django - Apache + mod_wsgi + windows
部署django - Apache + mod_wsgi + windows 1.环境 django 1.6.2 python 3.3 32位 apache 2.4.7 32位 一个可以使用的djan ...
- Window下python2.7+Apache+mod_wsgi+Django服务器配置
前言:试着使用python搭建一个网页,分别在windows下和linux下,本篇文章主要讲解Window下python+Apache+mod_wsgi+Django服务器配置过程中遇见的问题和解决方 ...
- centos6.5下配置django+uwsgi+nginx
https://blog.csdn.net/huanbia/article/details/54630180
- centos6下redis cluster集群部署过程
一般来说,redis主从和mysql主从目的差不多,但redis主从配置很简单,主要在从节点配置文件指定主节点ip和端口,比如:slaveof 192.168.10.10 6379,然后启动主从,主从 ...
- ubuntu下配置ProFtpd服务使用sqlite3作为后端用户认证
个人机器需要开个文件共享,Linux机器懒得配置SMB,就直接安装了ProFtpd,以做FTP服务器 Ubuntu安装挺简单,可使用就不那么友好了,配合GAdmin-Proftpd,一样不好用. 首先 ...
- win10环境下配置django+Apache2.4.38+python3.6项目
1.)Apache-2.4.38-win64-vc15下载地址: https://www.apachelounge.com/download/VC14/ 解压httpd-2.4.38-win64-VC ...
- Mac下配置PHP+Apache+phpMyAdmin+MySql远程链接
最近的项目是微信公众号平台的开发,微信官方给出的Demo是PHP的,发现大部分的学习资料也是PHP,那好吧,放弃Java,来段儿PHP吧 下面说说Mac下搭建PHP环境 数据库:MySQL-5.6.2 ...
- linux下配置php Apache mysql
一 Apache部分 http://www.cnblogs.com/bluewelkin/p/3805107.html里面是纠正了原文的一些小错误,即可正常安装 1.su 命令2.安装apr-1.3. ...
随机推荐
- 工具类 Util.Browser
/** * @description get the param form browser * @author xf.radish * @param {String} key the param yo ...
- 移动端touch事件获取clientX, clientY
目有个交互需要实现手指滑动的交互,pc端使用mousedown,mousemove,mouseup监听实现. 但在ios设备上mousemove是不好监听的,同类的方法是touchstart,touc ...
- MyBatis 错误:Invalid bound statement (not found)
错误: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.zr.msgg.per ...
- UVALive - 4670 Dominating Patterns AC 自动机
input n 1<=n<=150 word1 word2 ... wordn 1<=len(wirdi)<=70 s 1<=len(s)<=1000000 out ...
- PHP下利用PHPMailer配合QQ邮箱下的域名邮箱发送邮件
作 为PHP入门开发者,常常有这种述求:自己的网站中需要添加一个使用自己的域名作为发件人邮件地址的自动发送邮件的方法,用于诸如给用户发送验证码.通知 信息等.比如:我的某个用户注册模块,需要使用reg ...
- Google Developing for Android 学习总结
避免在循环中使用内存 也可理解为在循环中尽可能少创建对象,自定义控件避免在ondraw里面频繁创建paint对象. 尽可能避免内存分配 对象缓存: 常量通过类级别或者静态来进行缓存. 对象池: 同 ...
- thinkphp整合系列之phpqrcode生成二维码
php生成二维码其实挺简单的:当然指的是使用qrcode类库: 因此关于是否要写这篇博客:我是犹豫了再三的: 不过最后还是决定写下吧:如果有童鞋急着用:就可以直接引了: 再个也可以作为即将写的文章微信 ...
- DOM操作-遍历一个元素的所有属性
代码: <!DOCTYPE html> <html> <head> <title>遍历打印一个元素的所有属性</title> <met ...
- hdu_1181_变形课(dfs)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1181 题意:中文题,不解释 题解:直接DFS #include<cstdio> #incl ...
- 命令 shell 学习
for i in a b c do echo $i done !ser 历史补全 > 正确信息输出文件 >>正确信息输出文件 ,追加 2>错误信息输出文件 2>> ...
