从任何文件夹在WAMP上执行CGI程序

时间:2013-03-02 18:00:08

标签: perl cgi wamp

我正在开发一个PHP网站,但我正在使用Perl CGI进行文件上传。

我在WAMP下安装了ActivePerl。

由于我正在开发在Unix服务器上运行的站点,我想在本地镜像该环境,所以我想在WAMP cgi-bin之外执行CGI文件。

我该怎么做?

2 个答案:

答案 0 :(得分:5)

我最近在Localhost上使用Perl和CGI for Movable Type,所以我在使用Wamp Server设置Perl和CGI时做了一些步骤。我希望这可能有用。

<强>步骤1: 首先,您需要从www.wampserver.com下载Wamp Server并在您的计算机上安装Wamp Server。默认安装目录是'C:\ wamp',这里我使用默认选项进行安装。要完成安装,您必须设置邮件服务器的主机名和电子邮件地址,在此处您可以再次保留默认选项。那不会有害。

当前的Wamp Server将安装Apache 2.2.11,PHP 5.2.9-2 + PECL,MySQL 5.1.33,SQLitemanager和PhpMyadmin。

<强>步骤2: 现在您必须从http://www.activestate.com/activeperl/downloads下载ActivePerl(当前为5.10.0)并进行安装。默认安装目录是“C:\ Perl”,但为了简单和易用,我使用不同的目录。我在“C:\ wamp \ bin”中创建了一个新的文件夹名称“perl”。所以我在“C:\ wamp \ bin \ perl”目录中安装Active Perl。您需要做的下一件事是配置Apache Web服务器以执行Perl和CGI脚本。

<强>步骤3: 这是这里最重要的部分。您需要编辑Apache配置文件。现在转到“C:\ wamp \ bin \ apache \ Apache2.2.11 \ conf”目录并打开“httpd.conf”文件。编辑httpd.conf文件,如下所示。

1。在httpd.conf中,查找显示“”的行,只需几行,您就会找到“Options Indexes FollowSymLinks”的行。使用FollowSymLinks在SAME行中添加“包含ExecCGI”,因此它将从以下更改:

  • 选项索引FollowSymLinks

现在变成:

  • 选项索引FollowSymLinks包含ExecCGI

这将启用www文件夹中的CGI脚本。

2. 现在查找“AddHandler cgi-script .cgi”行,此行已注释掉。您需要通过取消注释此行来启用此功能,以删除此行开头的#字符。这将为扩展名为.cgi的文件添加处理程序。如果要在服务器中使用.pl文件扩展名,请在上面的行下方添加“AddHandler cgi-script .pl”。现在,您将能够使用.cgi和.pl,扩展名执行CGI和Perl脚本。

要添加的行

  1. AddHandler cgi-script .cgi
  2. AddHandler cgi-script .pl
  3. AddHandler cgi-script .cgi AddHandler cgi-script .pl

    3. 要添加目录索引文件,请查找“DirectoryIndex index.php index.php3 index.html index.htm”行。在这一行中添加index.cgi和index.pl。

    要添加的行

    1. DirectoryIndex index.php index.php3 index.html index.htm index.cgi index.pl

    DirectoryIndex index.php index.php3 index.html index.htm index.cgi index.pl

    替代方案:如果您不想浪费时间执行上述3个步骤,可以在此处下载已编辑的配置文件httpd.conf。用这个替换apache目录中的那个。

    <强>步骤4: 您的服务器现已配置好并准备运行perl和cgi脚本。您可能需要做的下一件事是配置perl以使用mysql数据库。您需要下载并安装mysql驱动程序以通过perl脚本启用数据库连接。您必须从ActivePerl包存储库中获取驱动程序。但是,默认的ActivePerl包存储库中没有mysql驱动程序模块。因此,您需要添加其他存储库并从该存储库进行安装。请按照以下步骤操作:

    转到DOS命令提示符并键入“ PPM ”。现在输入“安装DBI ”&gt;输入。完成安装后,键入“安装DBD-mysql ”&gt;输入。你现在应该完成。

    我们必须修改所有cgi文件的一些设置,我们必须修改你得到的所有cgi文件,因为它们通常指向perl,如“#!/ usr / bin / perl “但我们在Windows中没有这种惯例。更改只是在CGI文件的第一行,所以它很容易。将cgi文件中对perl的任何引用更改为当前位置。请记住,如果在perl安装期间未启用环境变量路径,则必须提供完整路径,如“ c:\ perl \ bin \ perl.exe ”,但如果已给出路径在环境变量中,您可以简单地执行“ perl.exe ”,因此我们的大多数cgi文件的第一行都是“#!perl.exe -w ”,但是没有引号。

答案 1 :(得分:0)

根据您的网络服务器,在W(in)上,它通常是IIS。

您可以将任何虚拟文件夹指向perl-script文件夹。然后,您需要将c:\ Perl \ bin \ perl.exe“%s”%s设置为此文件夹的* .pl的处理程序。参见例如http://community.activestate.com/forum-topic/configuring-perl-iis-7-0了解详情。 (在第7项下,我认为按“是”是正确的做法)。要创建虚拟文件夹,请打开Internet信息服务(IIS)管理器,然后向下浏览到“默认网站”,然后单击鼠标右键并添加虚拟目录。您可能还需要为iis安装一些模块(在Windows控制面板下 - &gt;应用程序和功能 - &gt;打开功能 - &gt; iis-&gt; www - &gt; Appl-&gt; CGI等)

如果Apache添加* .cgi或* .pl作为处理程序,如例如http://www.thesitewizard.com/archive/addcgitoapache.shtml

祝福!