Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1416192
  • 博文数量: 264
  • 博客积分: 5810
  • 博客等级: 大校
  • 技术积分: 3528
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-13 17:15
文章分类

全部博文(264)

文章存档

2011年(264)

分类: LINUX

2011-06-07 14:14:14

Rhel_i386_X86 + Django + Apache安装配置

 

一、说明

在安装过程中首先我尝试用mod_python的方式进行安装配置的。可是在Apache运行过程中总会遇到子进程退出的问题。我估计导致这种问题出现的原因是mod_python版本不支持python2.7. 所以我换用了fast-cgi的方式来跑我的应用。以下简单介绍一下安装配置过程。

二、安装篇

安装Httpd服务的正确步骤应当如下

下载:apr-1.2.9.tar.gzapr-util-1.2.8.tar.gz

#tar xzvf apr-1.2.9.tar.gz
#cd apr-1.2.9
#./configure --prefix=/usr/local/apr 
#make
#make install

 

#tar xzvf apr-util-1.2.8.tar.gz
#cd apr-util-1.2.8
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
#make 
#make install

 

安装zlib

安装一个zlib-1.2.3.tar 试试 可以!(需要安装这个包的)

开始安装

#tar xvfz httpd-2.2.17.tar.gz
#cd httpd-2.2.17

#./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all --enable-cgi --enable-rewrite --enable-deflate --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-mpm=prefork  --with-included-apr

 

#make
#make install

安装到的目录:/usr/local/apache

[root@pu apache]# ll

 

说明:我是用Apache2.2.X。现在来安装mod_fastcgi模块

Apache配置FASTCGI

1.       安装完了httpd之后打一个补丁mod_fastcgi

#下载mod_fastcgi-2.4.2.tar.gz

# tar zxvf mod_fastcgi-2.4.2.tar.gz

由于mod_fastcgi只支持apache2.0,不支持apache2.2.x,所以需要给源码打个patch才能继续编译
patch
文件如下:

http://www.cublog.cn/fileicon/zip.gif

文件:

this-patch.zip

大小:

10KB

下载:

下载


cd mod_fastcgi-2.4.2
patch  <  this-patch   
打个补丁包
cd mod_fastcgi-2.4.2
cp Makefile.AP2 Makefile
修改这里面的几个参数项《主要是apache的安装目录修改过来》

 

到此!

#make && make install 

就可以看到mod_fastcgi.so 这个文件生成了!

 

 

OK!到此WEB服务器安装完毕了!

 

 

第二步:安装python相关

1.       安装python2.7&Mysql-python

#wget

#tar -zxvf Python-2.7.tgz

#cd Python-2.7

./configure –prefix=/opt/tb/install/python --enable-shared

make && make install

注:--enable-shared不能少(mod_python用到的)

 

有时候,python的运行不了,提示:

python: error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory

解决方案:

echo '/usr/local/lib' > /etc/ld.so.conf.d/python2.7.conf

ln -s /opt/taobao/install/python/lib/libpython2.7.so* /usr/local/lib/

ldconfig

 

替换系统的python2.4

rm -f /usr/local/bin/python /usr/bin/python

ln -s /opt/ tb /install/python/bin/python2.7 /usr/local/bin/

ln -s /opt/ tb /install/python/bin/python /usr/bin/python

这样做以后一些系统自带的依赖python2.4的软件就不能用了,比如yum

解决方案:

vi /usr/bin/yum

修改第一行为:

#!/usr/bin/python2.4   /usr/bin/python2.4)这个还是2.4版本

 

 

安装SQLITER

发现没有sqlite模块。。。

wget
tar -xzf pysqlite-2.6.3.tar.gz

cd pysqlite

python setup.py build_static install

 

 

安装DJANGO

安装Django

#wget

#tar –zxvf Django-1.1.4.tar.gz

#cd Django-1.1.4

#python setup.py install

#ln -s /opt/ tb /install/python/bin/django-admin.py /usr/local/bin/

 

 

第三步:可以开始配置HTTPD服务了

我的配置文件如下

LoadModule fastcgi_module  /usr/local/apache/modules/mod_fastcgi.so

FastCGIExternalServer /www/client/codepub/mysite.fcgi -host 127.0.0.1:8055

  ServerName newpubs.tb.net

  DocumentRoot /www/client/codepub

  Alias "/site_media" "/www/client/codepub/site_media"

  RewriteEngine On

  RewriteRule ^/(site_media.*)$ /$1 [QSA,L]

  RewriteCond %{REQUEST_FILENAME} !-f

  RewriteRule ^/(.*)$ /mysite.fcgi/$1 [QSA,L]

 

MSnginx还要简单一点!

 

然后到我的项目目录下面启来cgi端口即可!

 

 

到此!配置完成

阅读(1222) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~