摘要
1、本文将知道你在 linux 下使用源码包安装
apache 2.2.4
python 2.5.1
mod_python 3.3.1
django svn trunk version
但是,因为无法得知编译过程中得到的出错信息,故本文默认编译过程全部顺利通过,任何疑问请在文后讨论区中进行。
2、本文中介绍的命令前面的“#”仅代表命令提示符,请不要将其连同命令一起输入。
一、安装 apache 2.2.4
1、下载
请到
http://httpd.apache.org
下载最新的 httpd 服务器,只要版本跟 2.2.4 相差不大,就可以参考本文进行配置安装。
2、解压
# tar xvfz httpd-2.2.4.tar.gz
上面命令会在当前目录得到 httpd-2.2.4 目录,这个目录就是 apache 2.2.4 的源码目录。
对于解压命令的详细介绍,请看我的这篇文章:
Linux 文件压缩解压详解
3、Configure
编译安装源代码的过程一般都是 configure/make/make install 三步曲,apache 也遵循这个规则。
进入 httpd-2.2.4 目录:
# cd httpd-2.2.4
执行如下命令查看 configure 的帮助信息
# ./configure --help
安装的全部细节都是由 configure 以及它的参数进行控制的。
如果你刚开始尝试从源代码包安装软件,请尽快习惯 configure 之后冗长复杂的参数!
下面是我推荐的 configure 参数,它会将 apache 安装到 /opt/apache 下面,并且带所有常用的 apache Modules:
# ./configure --prefix=/opt/apache --enable-track-vars --enable-cgi --with-config-file-path=/opt/apache/conf --enable-modules=all --enable-mods-shared=all --enable-file-cache --enable-disk-cache --enable-cache --enable-mem-cache --enable-dumpio --enable-logio --enable-mime-magic --enable-headers --enable-usertrack --enable-version --enable-ssl --enable-http --enable-rewrite --enable-proxy --enable-proxy-connect --enable-proxy-http --enable-proxy-ftp --enable-proxy-ajp --enable-proxy-balancer --enable-so
当然,安装所有扩展模块意味着将 apache 功能扩展到极限,但如果你不会配置这些模块,或者置之不理,他们很可能会给你带来不必要的麻烦或者安全隐患。
4、make / make install
真正漫长的步骤开始了(我指时间上),下面命令开始编译过程:
# make
等待编译完成之后,执行:
# make install
会将 apache 安装到第三步配置的 /opt/apache 目录中。
5、配置 apache
配置 apache 的 httpd.conf 文件是一项大工程,互联网上有很多高人的文章指导你进行正确必要的配置,我在这里就不赘述了。
如何将 apache 加入到系统服务中,请看我的这篇文章:
将 apache 加入 linux 系统服务
6、已知问题及解决方法
如果你遇到类似下面的 .so 权限错误:
httpd: Syntax error on line 63 of /opt/apache/conf/httpd.conf: Cannot load /opt/apache/modules/mod_python.so into server: /opt/apache/modules/mod_python.so: cannot restore segment prot after reloc: Permission denied
说明是你的 .so 文件权限不够,很可能是你的 SELinux(如果你有装)的权限检查没有通过导致的。
使用下面命令可以将 .so 文件定义为共享类库文件,就可以通过权限检查:
# chcon -t texrel_shlib_t /opt/apache/modules/*.so
注意:千万别将 *.so 权限改为 777,具体原因请看我的这篇文章:
解决 SELinux 带来的 PHP 权限问题
上面安装 apache 的过程讲述很详细,之后 python / mod_python 将只给出必要解释和推荐的 configure 命令。
二、安装 python 2.5.1
1、编译安装
到 www.python.org 下载最新的 python 源码包,解压得到目录,进入该目录,执行:
# ./configure --prefix=/opt/python/2.5.1
# make
# make install
使用下面命令将 python 添加到 /usr/bin 中,并且区别其他版本的 python 执行文件,使它们可以共存
# ln /opt/python/2.5.1/bin/python /usr/bin/python2.5.1
以后可以将新版本的 python 编译到 /opt/python/[版本]中,使用上面命令生成对应版本的链接。
2、设置运行命令
这里需要注意一下执行程序,现在的 python 2.5.1 的执行程序是 python2.5.1,
如果想进入 python 2.5.1 的 shell,需要键入 python2.5.1,
如果想系统使用 python 2.5.1 执行 .py 脚本,需要在脚本第一行将 python 运行命令修改为:
#!/usr/bin/python2.5.1
如果你觉得以后默认使用 python 2.5.1 就好,那么可以:
# rm -f /usr/bin/python
# ln /opt/python/2.5.1/bin/python /usr/bin/python
这样执行 python 进入的就是 2.5.1 了。
三、安装 mod_python
1、到 www.modpython.org 下载源码包,解压得到目录,进入该目录,执行:
# ./configure --with-apxs=/opt/apache/bin/apxs --with-python=/usr/bin/python2.5.1
# make
# make install
完毕之后,mod_python 会在 /opt/apache/modules 中添加 mod_python.so 库文件,并且在 /opt/python/2.5.1/lib/python2.5/site-packages 中添加 mod_python 包。
如果编译程序没有检测到 apache 和 python,会报错退出。
2、配置 httpd.conf
找到 /opt/apache/conf/httpd.conf 配置文件,在适当位置添加:
LoadModule python_module modules/mod_python.so
记住,modules/mod_python.so 必须有可以通过 SELinux 检查的权限,参看本文第一章第6节的内容!
四、安装 django
这次我们采用 django 的 SVN Head Version(最新开发版本)。
采用这个版本的好处是,官方的任何更新,你只需要运行 svn 进行更新就会得到最新的版本,并且更新即可用。
1、如果系统没有 Subversion,找到装上(过程略)。
2、得到最新版本的 working copy
这里有两个版本可以选择,择其一运行命令:
一是 django 全部源码(文件相当多):
# svn co http://code.djangoproject.com/svn/django /source/svn/django
二是 django 的当前最新版本 trunk:
# svn co http://code.djangoproject.com/svn/django/trunk /source/svn/django_trunk
3、将 django 源码链接到 python 的 site-packages 公共代码目录中
全部源码版本:
# ln -s /source/svn/django/trunk/django /opt/python/2.5.1/lib/python2.5/site-packages/django
最新版本 trunk:
# ln -s /source/svn/django/django /opt/python/2.5.1/lib/python2.5/site-packages/django
注意一定要带上参数 -s,否则后面调用会出错!
上面的命令只是创建了当前源码目录的一个链接到 site-packages 中,这样每次运行下面命令更新 django 之后,python 调用的都是更新之后的最新版本:
# cd /source/svn/django
# svn cleanup(如果提示locked,执行这一句)
# svn update
4、拷贝 django 管理文件
运行下面命令将管理文件拷贝到 /usr/bin 中,以便随处可以执行该文件:
#cp /source/svn/django/trunk/django/bin/django-admin.py /usr/bin/
或者
#cp /source/svn/django/django/bin/django-admin.py /usr/bin/
如果运行 django-admin.py 得到如下错误信息:
ImportError: No module named django.core
说明 django-admin.py 运行在了另一个版本的 python 中!
记住,我们的 django 是安装在 python 2.5.1 中的(/opt/python/2.5.1),如果你的 python 2.5.1 执行命令为 python2.5.1(参考第二章第2节),需要将 /usr/bin/django-admin.py 第一行修改为:
#!/usr/bin/python2.5.1
或者是已经安装 django 的 python 的执行命令。
4、参考文章
官方的安装指南,请参考:
http://www.djangoproject.com/documentation/install/
如何使用 django,请参考官方指南这一部分:
http://www.djangoproject.com/documentation/modpython/
推荐使用 .htaccess 文件,而不是直接修改 httpd.conf 配置文件,因为 .htaccess 更加灵活。
记得将 httpd.conf 配置文件中 AllowOverride 配置项作相应配置(比如 AllowOverride = All)
五、总结
如果完全按照上面的安装步骤进行安装,我们会得到如下内容:
apache 2.2.4 目录:
/opt/apache
python 2.5.1 目录:
/opt/python/2.5.1
mod_python.so 位置:
/opt/apache/modules/mod_python.so
django 源码包目录:
/source/svn/django
修改过的文件:
/opt/apache/conf/httpd.conf
如果想更新 django:
# cd /source/svn/django
# svn update
自此,全部安装完毕,你已经可以使用 django 创建你的 Python Web Application 了!
欢迎进行讨论,请直接在下方讨论面板留言。

最新回复
netyu (2008-8-09 10:31:17)
一、安装Apache
下载地址: http://httpd.apache.org/
apache_2.2.3-win32-x86-no_ssl.msi安装很方便,注意安装过程中要填email,否则启动报错
二、安装mod_python
下载地址:http://www.modpython.org/
mod_python-3.3.0b.win32-py2.4-Apache2.2.exe点击安装即可,注意python用的是2.4的
三、配置虚拟主机
编辑httpd.conf:
设置MaxRequestsPerChild 1,这样可以在开发阶段不用重启Apache进行测试
添加LoadModule python_module modules/mod_python.so
去掉注释Include conf/extra/httpd-vhosts.conf
假如工作目录为D:\py,cmd切换到该目录运行“django-admin.py startproject myproj”
编辑httpd-vhosts.conf:
NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
<Location "/">
SetHandler python-program
PythonPath "['D:/py'] + sys.path"
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE myproj.settings
PythonAutoReload Off
PythonDebug On
</Location>
</VirtualHost>
在D:\py\myproj下新建helloworld.py:
from django.http import HttpResponse
def index(request):
return HttpResponse('Hello, Django!')
修改urls.py:
from django.conf.urls.defaults import *
urlpatterns = patterns('',
# Example:
# (r'^myproj/', include('myproj.apps.foo.urls.foo')),
(r'^$', 'myproj.helloworld.index'),
# Uncomment this for admin:
# (r'^admin/', include('django.contrib.admin.urls')),
)
OK,启动Apache访问http://localhost吧
平鼠得 (2008-8-20 09:13:42)
cdef323 (2008-9-20 03:00:02)
我很多朋友的都在用了!目前证实可以用的QQ华夏外挂,QQ华夏下载
特别注意 :
1.在格拉卡和烈焰格拉卡地图中 用弱怪过图 会发现图中原来的大滚石变的很小 切记 千万不能去打变小了的滚石 不然会发生错误!!
2.用天龙八部外挂加速秒怪特别注意。天帷巨兽图里会有各类炮型怪 比如龙头炮之类,千万不能用加速秒他们 不然游戏也会被弹出去 发生错误!! 碰到有炮的地图 先把炮杀死 再F3加速秒怪!
为了让地下城与勇士外挂能长远为大家服务 请勿将清风的帐号密码借与第三方实用 一旦发生问题 后果自负!
如果觉得好 请告诉你的朋友
ccr222 (2008-10-17 23:54:43)
答:在注册开户的过程中您必须确认您是否满18岁并注意您所在国家或地区相关法律规定,引起的任何法律责任与本公司无关;您必须有足够的金额存放于你的投注户口内方能完成开户过程。
皇冠正网 http://www.cccrr77.cn
皇冠开户怎样存款
答:您可以利用以下方式将您的存款存入本公司:ATM、转账通、银行直接存款、网络付款服务、国际汇款等。
注意:汇款时请多汇一元几角 如:2001.00 以便核对。
皇冠投注网百度 累啊,打了半天字,手都麻了。 皇冠足球投注 http://www.ccr222.cn 正版皇冠投注网 皇冠投注开户,刚才在皇冠投注网里聊天去了。 皇冠投注网开户 皇冠最新投注网 皇冠足球投注网 http://www.ccr111.cn
本日志相关的主题:
全国免费咨询热线:00861-581578-1111
怎么样才能结束我的皇冠账户
皇冠投注网 http://www.ccrrrll.cn
我何时才知道存款已被接受
怎么样才能结束我的皇冠账户
开户需要注意什么
怎么样才能结束我的皇冠账户
皇冠足球开户 http://www.ccrrr77.cn
皇冠网:http://www.ccr222.cn
皇冠正网:http://www.ccrrrll.cn
皇冠投注网:http://www.cccrr77.cn
皇冠投注开户:http://www.ccr222.cn
皇冠后备投注网:http://www.ccr111.cn
皇冠ry22222投注网:http://www.ccrrr77.cn
皇冠投注网开户:http://www.ccr222.cn
皇冠备用投注网:http://www.ccr111.cn