apache 不能访问 cgi-bin目录下的文件

apache 不能访问 cgi-bin目录下的文件

转自:http://www.cnblogs.com/shuang/archive/2008/12/08/1350718.htm

我在本机上配置perl的运行环境老是不成功的原因在于没有去掉httpd.conf中的
ScriptAlias /cgi-bin/ "F:/project/perl/cgi-bin/"前面的“#”(去掉#后还要重起apache,从任务栏的Monitor Apache Servers,否则不起作用,好像apache只是在每次启动时,才使用httpd.conf文件),当然这是网上教程的cgi-bin的目录,我对应的配置是:
ScriptAlias /cgi-bin/ "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/",也可能与perl的安装路径有关,我用的是ActivePerl-5.10.0.1004-MSWin32-x86-287188.msi,前几次都没有与apache装在一起,最后我把perl装在和Apache2.2同一级目录上,但是忘了为perl创建目录,所以看起来很乱。

此前一直报如下的错误:

++++++++++++++++++++++++++++++++++
不能直接访问该目录下的text文档

会报错:

+++++++++++++++++++++++++++++++++
关于perl的其他配置:

<Directory "D:/project/perl/cgi-bin/">
    AllowOverride All
    Options All
    Order allow,deny
    Allow from all
</Directory>
  AddHandler cgi-script .cgi .pl .exe  

++++++++++++++++++++++++++++++++++++++++++++
参考资料:http://purpen.javaeye.com/blog/101328
今天看了一下用Perl写cgi的教程,于是想测试一下成果,于是,开始了安装配置全过程.

    因为,以前做的是php开发,apache已安装成功,并运行正常(安装路径:E:/webserver/Apache2),所以,在此对apache2的安装就不多做说明.(详细参考:http://purpen.javaeye.com/admin/show/98673).

    在此着重说明perl的安装过程及在apache下的配置.

   1, 下载windows环境下的ActivePerl For Windows V5.8.8.820(http://www.skycn.com/soft/1211.html).

   2, 解压缩,双击ActivePerl-5.8.8.820-MSWin32-x86-274739.msi安装.在此需要注意的是安装路径,Perl安装的缺省目录位置为C:\usr,当然,你可以安装在任意你喜欢的目录,我就装在(E:/webserver/perl/,为了便于管理)

   3.配置Apache以支持CGI

    打开httpd.conf修改:

  1. ScriptAlias /cgi-bin/ "F:/project/perl/cgi-bin/"  
  2. <Directory "D:/project/perl/cgi-bin/">
        AllowOverride All
        Options All
        Order allow,deny
        Allow from all
    </Directory>
  3.   
  4. AddHandler cgi-script .cgi .pl .exe  

     其中"F:/project/perl/cgi-bin/"是我打算存放*.pl脚本的目录,把目录的访问权限都设为All.(注意删除前面的#,如果有的话),

     在此,apache支持perl/cgi的环境就配置完整了.

    4.在F:project/perl/cgi-bin目录下创建一个hello.pl测试一下.
 

  1. #!E:/webserver/perl/bin/perl.exe  
  2. #scriptname hello.pl  
  3.   
  4. print "Content-type: text/html\n\n";  # 此句一定要写而且写准确.  
  5. print "Hello, World...\n";  

    注意:当您浏览cgi程序出现500错误的时候可以看一下您的程序,是不是以:#!E:/webserver/perl/bin/perl.exe开头。
或者没有print "Content-type: text/html;\n\n";

   运行hello.pl,出现一下显示:

时间: 2024-09-17 03:47:45

apache 不能访问 cgi-bin目录下的文件的相关文章

ORACLE关于bin目录下各文件的意义及使用方法

oracle $ORACLE_HOME/bin下的utilities解释Binary              First Available        Description---------           ----------------      ------------------------------------------adapters            (7.3.4)                Installed Network Adaptersagentct

php-mac配置apache的问题,用户目录下404访问不了

问题描述 mac配置apache的问题,用户目录下404访问不了 /localhost/可以看到it works. 在user文件夹下面配置了, 1 <Directory "/Users/bjhl/Sites/"> 2 Options FollowSymLinks Indexes MultiViews 3 AllowOverride All 4 Order allow,deny 5 Allow from all 6 </Directory> httpd.conf

apache-tomcat-6.0.20安装完成后bin目录下没有shutdown.bat和startup.bat

问题描述 有哪位大侠知道为什么我的apache-tomcat-6.0.20安装完成后bin目录下没有shutdown.bat和startup.bat,也没有service.bat.如果要启动只能靠myeclipse启动.郁闷. 解决方案 解决方案二:没有人知道么?>解决方案三:service.bat@echooffremLicensedtotheApacheSoftwareFoundation(ASF)underoneormoreremcontributorlicenseagreements.S

关于安卓开发环境问题-andriod studio ,bin目录下的studio.bat,找不到这个bat,求大神指点

问题描述 andriod studio ,bin目录下的studio.bat,找不到这个bat,求大神指点 本人虾米一个,安装了studio提示需要运行英特尔加速器HAXM,根据网络上大侠们的回复说需要修改bin目录里的studio.bat,结果怎么都找不到我bat,求大侠指点迷津开发环境问题-andriod studio ,bin目录下的studio.bat,找不到这个bat,求大神指点-找不到studio.bat"> 解决方案 重装一下,或者不用加速器(一样可以),另外可以使用geny

asp.net实现访问局域网共享目录下文件的解决方法_实用技巧

本文以实例讲述了asp.net实现访问局域网共享目录下文件的解决方法,完整代码如下所示: using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls;

linux下的bin和/usr/bin目录下的命令有什么不同?

问题描述 linux下的bin和/usr/bin目录下的命令有什么不同? 各位大牛,请问linux下的bin和/usr/bin目录下的命令有什么不同? 另外,我看视频时有说到,bin下的命令可以在单用户模式下执行,那请问是所有bin下的命令都可以吗? 解决方案 /bin是超级用户和一般用户都可以使用的命令:/usr/bin是安装的软件的命令 usr表示的是unix software source,不是user啊... 解决方案二: /bin目录下是共用的程序(一般是可执行的文件),/usr/bi

DAL已经引用了,为什么不出现在Bin目录下???

问题描述 我用UI引用BLLBLL引用IBLLIBll引用IDALIDAL引用DALFactoryDALFactory引用DAL为什么其他程序集都有,就是没有DAL我直接用UI引用DAL时Bin目录下才有DAL为什么上面链式引用就没有DAL了 解决方案 解决方案二:本来就是这样,除非你将dll的生成动作设置为"AlwaysCopy"解决方案三:为什么你一定要在UI里看见DAL?既然你是通过UI调用BLL,BLL再调用DAL,UI根本就不应该直接能够看见DAL解决方案四:本来就是这样子的

基础才是重中之重~网站bin目录下的程序集自动加载

网站bin目录下的程序集一般由系统项目,项目引用的外部DLL及外挂DLL组成,它们在网站运行时会自动加载,这一点很重要,项目本身DLL及项目引入的DLL会自动加载,这没有问题,而外挂在bin目录的DLL也会自动加载,这很重要,因为,它可以使我们的应用程序更加灵活,在开发通用功能上,也显得扩展性更强! 一个例子,比如一个HttpModule,它是一个通用的功能,向页面添加一些缓存过期的共用信息,这对于你所有网站都是共用的,这时,可以建立一个HttpModule项目,它代码可能是这样 namespa

Asp.net 4.0,首次请求目录下的文件时响应很慢

原文:Asp.net 4.0,首次请求目录下的文件时响应很慢 1. 问题起因2. 尝试过的处理思路3. 解决方法   1. 问题起因     一个从VS2003(.Net Framework 1.1)升级到.net framework 4.0的项目,每次编译或者部署到服务器上后,首次请求任何一个目录下的默认页面时,都要耗时3~5秒:而以前使用.net framework 1.1的时候,没有这个问题. 我在页面上开启Trace="true"来跟踪,发现页面的处理时间并不久(IIS重启,首