网站主页   操作系统    网络工程    服务器    网页制作    数据库    程序开发    网络安全    办公软件   
讲座日期: 本周六下午1点30分 抢座
讲座地点: 北大青鸟马甸校区
主讲老师: 王老师 金牌讲师
讲座主题: 网络安全
讲座内容: 检测、防御、黑客信息,如何过滤不安全的网站,如何防御黑客的进攻。
订座电话: 010-82011432/33
  您当前位置:主页 > 网络学院 > 服务器 > APACHE服务器 >

在Apache服务器上运行mod_perl




现在网上已经有大量的关于成功运行mod_perl模块的介绍, 该模块可以让Perl程序员更
好地控制 Apache。一旦Apache服务器中内置了mod_perl的Perl解释器, Perl脚
本就可以快速执行,使得你的的访问者无需等待。

如果你打算扩展Apache Web server的功能,你可以试试mod_perl模块的威力。模块是个集成到一起的程序集合,可以让网络开发者扩展其服务器的功能,而无需修改服务器自身。一旦有了模块,你就可以增强服务器的功能,例如在指定的时间段内,可以重定向URL,或者也可以对你的服务器进行,以便让Perl脚本运行得更快。
现已经有大量功能强大的mod_perl模块的例子, 该模块可以让Perl程序员更好地控制其
Apache服务器。Apache服务器中内置了mod_perl的Perl解释器, 使得Perl脚本可以快
速执行,你的网页的访问者就无需等待。
我将介绍两个关于模块的例子,其中第二个例子将介绍mod_perl模块。一旦你了
解了这个过程,你就可以为Apache网络服务器配置其它各种不同的模块。请看
Apache Module Registry,了解一下可以下载哪些增强的功能。

模块入门

扩展使用模块的Apache是相当方便的, 只要下载打算要用的模块。要了解如何
安装和使用模块,我用如下一个简单的例子来阐明:当服务器接收到一个给定页面
的请求时,服务器返回"Hello World"。

假设你已经完成如下工作:在Apache安装时,已经带有了编译过的 mod_so模块,如果
已经完成该步,就可以添加新模块到Apache中,而无须再编译。为了判断是否已经安装
编译过的 mod_so模块,可以运行/httpd -l , 看看是否有mod_so。 如果没有,
请阅读Dynamic Shared Object的中有关技术资料,重新配制你的服务器,以便包含mod_so。

要运行Hello World模块, 先要下载mod_hello_world.c 文件,该.c文件是用来编译
成.so文件的,你要使用apxs命令来进行编译,可以把编译后的文件保存在任何地方,
你可以执行类似如下的命令:
apxs -c -o mod_babble.so mod_babble.c

为了让Hello World模块能够在你的服务器上运行,就要编译mod_hello_world,之
后,就会创建一个名为mod_hello_world.so的文件,把该文件复制到Apache的libexec目
录中,此时,我们已经完成了一半的任务,我们现在只要修改conf目录中的httpd.conf
文件:打开httpd.conf文件,找到LoadModule 行,在该部分的最后一行后面,添加如下行:

LoadModule hello_world_module libexec/mod_hello_world.so

如果你有ClearModuleList,在你的配置文件中就会有AddModule部分,(如果你
没有ClearModuleList,你可以跳过此步)在AddModule部分的末尾,添加如下行:

AddModule mod_hello_world.c

最后,在配置文件的AddModule部分后面的任何一处,添加如下内容:

<Location /hello>
SetHandler hello_world
</Location>

该行告诉Apache,任何对名为"/hello"的页面的请求,将会被转到
hello_world模块,现在,重新启动网络服务器,发出请求: http://localhost/hello.

你将在你的中看到"Hello World!" 。

选择合适的模块

我们现在遇到的最大问题是:在构造模块时,只用到C语言编写的模块, 为了让这
些程序能够在特定的服务器上运行,这些源程序在编译时还必须带上正确的编译开关。
在每次安装Apache时,都必须重新编译这些源程序。要了解使用哪些编译开关的问题,
可以通过运行Apache附带的apxs脚本来获得,但是每次在新的服务器上运行时,都得重
新编译该模块,重新编译始终是个问题。

有个模块可以解决这些问题,而且该模块还带有更多其他的功能,这就是mod_perl模块,
其功能很强大,本文只能为大家作一些该模块的简单介绍。

为什么使用mod_perl?

mod_perl 模块的提供的一个特色是:可以用Perl语言来编写Apache 模块,Perl 是
解释性语言,其优缺点并存。解释性语言的一个主要优点是:每次安装服务器时,不必重新
编译这个模块。缺点是需要一个解释器来阅读和执行实际的程序,这会降低服务器的运行速度,
通过在启动Apache服务器的同时,启动Perl解释器,这样mod_perl就克服了运行速度减慢的问题。
Perl解释器还可以对服务器上的Perl进行预先解释,并可以随时捕捉到它,以便一旦
要用到该段代码时,能够快速执行。

使用mod_perl
mod_perl可以从mod_perl中下载得到 。对于mod_perl的安装和编译的介绍,超出了本文的篇幅,
来源:


上一篇:Apache常用管道符  
下一篇:Apache加密目录解决方案
相关信息:

·Apache主站点配置 ·关于apache的并发数
·Apache加密目录解决方案 ·Apache常用管道符
·Linux系统上把PHP编译进Apache静态内核 ·SVN配置和apache的配置
·用Apache的rewrite生成伪静态页 ·什么是FTP及FTP服务器
·服务器推送技术 ·apache的维护

Copyright © 2002-2015 版权所有
学校地址:北京市海淀区西三旗建材城中路29号北大青鸟
招生热线:010-82011433/32 京公网安备110102004704  京ICP备05043413号 京公网安备110102004704