2013-03-02 68 views
1

我正在開發一個PHP網站,但我使用Perl CGI進行文件上傳。從任何文件夾執行WAMP上的CGI程序

我已經在WAMP下安裝了ActivePerl。

正如我開發的網站,我想在本地鏡像該環境在Unix服務器上運行,所以我想執行WAMP的cgi-bin之外的CGI文件。

我該怎麼做?

+1

不要使用兩種不同的服務器端語言編寫Web應用程序。 – jordanm 2013-03-02 18:16:36

+0

你的意思是* WampServer *? – Borodin 2013-03-02 19:47:28

回答

0

根據您的網絡服務器,在W(中),它往往是IIS。

你可以有任何虛擬文件夾指向你的Perl腳本文件夾中。然後,您需要將c:\ Perl \ bin \ perl.exe「%s」%s設置爲此文件夾的* .pl處理程序。見例如http://community.activestate.com/forum-topic/configuring-perl-iis-7-0瞭解詳情。 (在第7項下,我認爲按Yes是正確的做法)。要製作虛擬文件夾,請打開Internet信息服務(IIS)管理器,然後向下瀏覽到默認網站,然後右鍵單擊並添加虛擬目錄。您可能還需要爲iis安裝一些模塊(在windows控制面板 - >應用程序&功能 - >打開功能 - > iis-> www - >應用程序 - > CGI等)

如果Apache添加* .cgi,或* .pl作爲處理程序,如例如中所述http://www.thesitewizard.com/archive/addcgitoapache.shtml

最良好的祝願!

+0

「WAMP」中的「A」用於Apache服務器。使用IIS的等效技術稱爲「WIMP」。 – Borodin 2013-03-02 20:54:46

+0

@Borodin:好點:-) – FtLie 2013-03-03 14:50:28

3

我對Perl和CGI的工作最近對本地主機的Movable Type,所以我在做關於建立Perl和CGI與WAMP服務器幾步之遙。我希望這可能會有用。

第一步: 首先,你需要從www.wampserver.com下載WAMP的服務器和您的計算機上安裝WAMP的服務器。默認的安裝目錄是'C:\ wamp',這裏我使用默認的安裝選項。要完成安裝,您必須設置郵件服務器的主機名和您的電子郵件地址,在這裏您可以再次保留默認選項。這不會造成傷害。

當前的WAMP服務器將安裝Apache 2.2.11,PHP 5.2.9-2 + PECL中,MySQL 5.1.33,和的SQLiteManager PHPMYADMIN。

第二步: 現在,你必須從http://www.activestate.com/activeperl/downloads下載的ActivePerl(目前爲5.​​10.0)並安裝它。默認安裝目錄是「C:\ Perl」,但爲了簡單和易用,我使用了不同的目錄。我在「C:\ wamp \ bin」中創建了一個新的文件夾名「perl」。所以我將Active Perl安裝在「C:\ wamp \ bin \ perl」目錄下。接下來你需要做的是配置Apache Web服務器來執行Perl和CGI腳本。

第三步: 這是這裏最重要的組成部分。您需要編輯Apache配置文件。現在進入「C:\ wamp \ bin \ apache \ Apache2.2.11 \ conf」目錄並打開「httpd.conf」文件。編輯httpd.conf文件如下。

1.在httpd.conf中,找到表示「」的行,在它下面幾行,您會看到「Options Indexes FollowSymLinks」行。添加「Includes ExecCGI」在了FollowSymLinks同一行,因此將改變:

  • 選項指標的FollowSymLinks

而現在變成了:

  • 選項指標的FollowSymLinks包括ExecCGI

這將啓用您的www文件夾中的CGI腳本。

2.現在查找「AddHandler cgi-script .cgi」這一行,註釋掉這一行。您需要通過取消註釋此行來啓用此操作,以便刪除此行開始處的#字符。這將爲.cgi擴展名的文件添加處理程序。如果你想在你的服務器中使用.pl文件擴展名,在上面的行的下面添加「AddHandler cgi-script .pl」。現在您將能夠使用.cgi和.pl擴展名來執行CGI和Perl腳本。

行添加

  1. AddHandler的CGI腳本的CGI
  2. AddHandler的CGI腳本。特等

AddHandler的CGI腳本的CGI AddHandler的CGI腳本。特等

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 Package Repository中不提供mysql驅動程序模塊。因此,您需要添加額外的存儲庫並從該存儲庫進行安裝。請按照下列步驟操作:

轉到DOS命令提示符並鍵入「PPM」。現在輸入「安裝DBI」> ENTER。完成安裝後,請鍵入「安裝DBD-mysql」> ENTER。你現在應該完成。

,我們將不得不修改所有的CGI文件的一些設置,以及我們必須修改,你得到的共同所有的CGI文件,他們將指向類似Perl的「#!的/ usr/bin中/ perl的」但我們在windows中沒有這個約定。這個改變只是在你的CGI文件的第一行,所以它很容易。將任何對cgi文件中perl的引用更改爲當前位置。請記住,如果您在perl安裝期間未啓用環境變量路徑,則必須提供完整路徑,如「c:\ perl \ bin \ perl.exe」,但如果您已在環境變量中提供路徑,你可以簡單地做「perl.exe」,所以我們的大多數cgi文件的第一行爲「#!perl.exe -w」,但沒有引號。

+0

很高興同時引用原始來源:http://www.tommyrodriguez.com/?p = 446您的「擴展版本」中有一些語法錯誤,但有幫助。 – user919426 2015-02-03 19:37:08

相關問題