构建一个Perl/CGI投票系统
作者:Webmaster 来源:Linuxdby.com 点击:
日期:2007-06-05
[收藏] [投稿]
IE是否经常中毒?推荐您
|
mod_perl的脚本的可移植能力。缺点是代码有些难以调试,因为需要对客户机与服务器之间交换的信息进行监视。细节:文件布局 安装过程要求Web服务器上有三种类型的目录: 一个可写的目录,用来保存用户提交的选票。一个位置,CGI需要在这里运行。一个位置,用来保存静态数据(例如CSS,logo图像,以及包含更详细指令的文件)。还要注意的是,这种权限可以进行修改,这样,Web服务器就可以向这个目录中写入DBM文件的内容了。 清单2显示了在Web服务器上创建典型目录的过程。 清单2.在Web服务器上设置目录
$iduid=500(allan)gid=500(allan)groups=10(wheel),48(apache),500(allan)$sudomkdir/var/www/db/var/www/javascript//var/www/css/$sudochmod2775/var/www/db$sudochmod2755/var/www/javascript//var/www/css/$sudochownapache.apache/var/www/db/
| | 严格来说,只有cgi-bin(/var/www/cgi-bin)和DBM(/var/www/db)目录是绝对必需的,因为它们分别保存了脚本的可执行文件和投票数据。清单1中给出的文件布局是专用于Linux的,Web服务器进程的用户和组名可能有所不同,但实质上都需要在文件系统的适当地方放上几个Web服务器可以访问的组件。在将支持文件复制到各自的目录中之后,要确保对Web服务器的配置文件(例如httpd.conf)中的别名进行了正确更新。 在创建清单2中所给出的目录之后,将ZIP文件中展开的内容复制到您的系统的类似目录中。其中最重要的是,ballot、DraftBallot.pm、BallotBox.pm和CastBallot.pm文件都需要位于cgi-bin目录中。我们只需要使用3个非标准的Perl模块;安装过程如清单3所示(更详细的信息,请参阅模块的README文件)。 清单3.安装Perl模块
$sudoperl-MCPAN-e'installMLDBM'$sudoperl-MCPAN-e'installMLDBM::Sync'$sudoperl-MCPAN-e'installMIME::Lite'
| |