配置nginx 執行CGI Perl cgi

2021-05-24 23:54:23 字數 1428 閱讀 8706

筆者的nginx安裝目錄為/usr/local/nginx

虛擬機器配置檔案為/usr/local/nginx/conf/vhosts.conf

目前php fast-cgi已支援

以下操作均在su下完成

安裝perl cgi模組

wget       

tar -zxvf fcgi-0.67.tar.gz      

cd fcgi-0.67      

perl makefile.pl     

make && make install

安裝fcgi-procmanager:

wget      

tar -xzxf fcgi-procmanager-0.18.tar.gz      

cd fcgi-procmanager-0.18      

perl makefile.pl      

make      make install

先在/bin目錄下放置乙個perl寫的分發器,取名叫perl-fcgi

vi /bin/perl-cgi

給這個指令碼執行許可權

chmod +x  /bin/perl-fcgi

然後試試看能否啟動

/bin/perl-cgi &

若是成功則會出現以下資訊

fastcgi: server (pid 21315): initialized

fastcgi: manager (pid 17915): server (pid 21315) started

如果遇到錯誤can』t locate fcgi.pm,那麼執行下面的命令

perl -mcpan -e 'install fcgi'

perl -mcpan -e 'install fcgi::procmanager'

cd /usr/include; h2ph *.h */*.h

第一、二條命令是給perl安裝fcgi模組,第三條是註冊perl能識別的標頭檔案,然後重新執行/bin/perl-fcgi, 如果正常的話,那麼執行:

netstat -tunlp

列表中應該出現

tcp        0      0 127.0.0.1:10081             0.0.0.0:*                   listen      5640/perl

我的vsftpd、nginx、php-fpm都是以nobody執行,則perl-cgi也用nobody執行

chmod +x /sbin/runas

runas --daemon -g nobody -u nobody /bin/perl-fcgi

***************===

配置nginx

vi /usr/local/nginx/conf/fcgi_perl.conf

下面是乙個cgi虛擬機器的配置示例

Nginx 配置指令的執行順序(八)

前面我們詳細討論了rewrite access和content這三個最為常見的 nginx 請求處理階段,在此過程中,也順便介紹了執行在這三個階段的眾多 nginx 模組及其配置指令。同時可以看到,請求處理階段的劃分直接影響到了配置指令的執行順序,熟悉這些階段對於正確配置不同的 nginx 模組並實...

Nginx 配置指令的執行順序(七)

來看乙個ngx static模組服務磁碟檔案的例子。我們使用下面這個配置片段 location 同時在本機的 var www 目錄下建立兩個檔案,乙個檔案叫做index.html,內容是一行文字this is my home 另乙個檔案叫做hello.html,內容是一行文字hello world....

Nginx 配置指令的執行順序(八)

前面我們詳細討論了rewrite access和content這三個最為常見的 nginx 請求處理階段,在此過程中,也順便介紹了執行在這三個階段的眾多 nginx 模組及其配置指令。同時可以看到,請求處理階段的劃分直接影響到了配置指令的執行順序,熟悉這些階段對於正確配置不同的 nginx 模組並實...