Apache服务器CGI配置
更新日期:2021-04-01 09:41  百度收录  点击:

配置Apache来处理CGI请求,包括告诉Apache将CGI程序放在什么地方、为特定的文件扩展名设定CGI句柄、以及说明将哪些文件扩展名视为CGI程序。建议将CGI程序存储于一个目录下,以便对其进行更好的控制。最好将CGI程序目录放在你的DocumentRoot目录外面。这样就不可能对CGI程序直接访问,也就保证了你的站点具有更好的安全性。

 

一般情况下,CGI脚本文件都放入homedcgibin目录中,需要使用CGI程序的html文档通过“cgibin”来指定要调用的CGI程序。但如果要使脚本文件与相关的html文档在一起,则可以用scriptAlias指令来指定新的脚本目录。

 

例如,html文件在目录myhomedhtml中,CGI脚本在myhomedcgibin中,使用命令:

 

scriptAliasmycgimyhomehttdcgibin

 

可以在任何html文件中,当需要使用myhomedcgibin中的程序时,如abc.pl,就可以使用“mycgiabc.pl”来调用。

 

在由scriptAlias

 

指定的目录中,Apache认为所有的文件都是用于执行,而不做一般文件处理。在这样的目录中,文件的名字不必具有如“.php”、“.pl”等可执行文件的后缀。但如果想要在scriptAlias指定的目录之外执行这些程序,必须在Apache的配置文件中对执行程序的文件名后缀使用AddHandler进行说明,例如:

 

AddHandlercgiscript.php.pl

 

这样,Apache将把以“.php”、“.pl”为后缀的文件当作CGI脚本来运行。

 

为了使某个目录中以“.cgi”为后缀的文件能够执行,在Apache的配置文件中的相应目录下(由定义)的Options中要包?**cCGI选项。

 

有些时候,不希望目录中的所有“.cgi”文件都能被执行。例如,只让abc.cgi能执行,则可以使用模块mod_rewrite提供的功能,即在包含该文件的目录中,如htdocsmydir加入“.htaccess”文件,文件内容如下:

 

RewriteEngineon

 

RewriteBasemydir

 

RewriteRule^abc.cgi\.cgi$[Tapplicationxdcgi]

 

即把abc.cgi文件重写成具有CGIMIME类型的文件,从而能被服务器执行。

 

注意要在Apache的配置文件中将该目录的AllowOverride包含FileInfo,以便使在“.htaccess”文件中mod_rewrite模块的指令能够有效。

万兆网卡的发展前景来看,未来会直带来积极的影响。
  • Apache启动提示没有php5apache22.dll2021/4/1 9:40:53

    首先,打开php进行下载 地址:phpdownloads.php,选择windowdownload 选择对应的PHP版本和需要的32位或64位 下在解压后的文档中就包含了这个文件,把它复制到对应的php安装目录下 从 万兆网卡 的发展前景来看,未来会直带来积极的影响。...

  • Apache服务器CGI配置
  • Apache服务器CGI配置

    配置Apache来处理CGI请求,包括告诉Apache将CGI程序放在什么地方、为特定的文件扩展名设定CGI句柄、以及说明将哪些文件扩展名视为CGI程序。建议将CGI程序存储于一个目录下,以便对其进行更好的控制。最好将CGI程序目录放在你的DocumentRoot目录外面。这样就不可能对CGI...

  • Apache和IIS共享80端口的设置方法2021/4/1 9:41:48

    方法一: IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 cInetpubAdminscripts cscriptadsutil.vbssetw3svcdisablesocketpoolingtrue 该命令反馈如下disablesocketpooling(BOOLEAN)True 重启IIS InetpubAdminScriptscscriptadsutil.vbssetw3svcdisablesock...