您所在的位置:读书频道 > 操作系统 > Linux > 18.4.2 启动某个目录的CGI程序执行权限

18.4.2 启动某个目录的CGI程序执行权限

2007-12-05 14:35 鸟哥 机械工业出版社华章公司 字号:T | T
一键收藏,随时查看,分享好友!

《鸟哥的Linux私房菜——服务器架设篇》(第二版)第18章的主要介绍的是WWW服务器。本文主要介绍的是启动某个目录的CGI程序执行权限。

AD:

18.4.2  启动某个目录的CGI程序执行权限

如果想让Apache执行perl之类的网页程序,就需要安装一些额外的模块。建议最好安装一下mod_perl与mod_python这两个软件。若想执行CGI程序就要到/var/www/cgi-bin/目录下执行。如果想要在其他目录下执行CGI是否可以呢?当然可以,需进行如下设置。

1. 利用新目录下的Options参数设置

假设想要执行CGI程序的扩展名为.cgi或.pl,且放置的目录为/var/www/html/cgi/时,可以进行如下操作:

[root@linux ~]# vi /etc/httpd/conf/httpd.conf
# 找到下面这一行,大约在807行左右
#AddHandler cgi-script .cgi
# 将它改成如下模样,让扩展名为.pl的文件也能执行
AddHandler cgi-script .cgi .pl

# 然后加入下面这几行来决定开放某个目录的CGI执行权限

    Options ExecCGI
    AllowOverride None
    Order allow,deny
    Allow from all


[root@linux ~]# apachectl restart

接下来只要让CGI程序具有x权限,那么它就可以执行了。例如,文件存放在 /var/www/html/cgi/index.cgi中:

[root@linux ~]# chmod a+x /var/www/html/cgi/index.cgi

然后在地址栏中输入:“http://主机名称或IP/cgi/index.cgi”,即可执行该文件。

2. 使用ScriptAlias的功能

可以直接利用文件名的别名来处理。

[root@linux ~]# vi /etc/httpd/conf/httpd.conf
#同样您要先确认这一行是存在的
AddHandler cgi-script .cgi .pl

# 然后加入下面这几行来决定开放某个目录的CGI执行权限
ScriptAlias /cgi/ "/var/www/html/cgi/"

[root@linux ~]# apachectl restart

这个方法非常简洁,因为该目录不需要在Apache首页下也可以成功。

上述两种方法可以随意选取一个进行处理,不需要两个都进行。

【责任编辑:董书 TEL:(010)68476606】

回书目   上一节   下一节

分享到:

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点职位

更多>>

热点专题

更多>>

读书

网络工程师必读——接入网与交换网
本书是以一个典型的计算机广域网通信为背景进行编写的,详细、全面地介绍了通信网中最主要的两个部分:目前,国内外接入网与交换

51CTO旗下网站

领先的IT技术网站 51CTO 领先的中文存储媒体 WatchStor 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院