当前位置:操作系统 > Unix/Linux >>

在UNIX/Linux下安装FastCGI的方式

在Unix/Linux安装FastCGI起来比较复杂。现在就在这里讲一下,在Unix/Linux系统下,Perl语言,Apache服务器环境下安装FastCGI。

  Apache里FCGI的模块:

  1、下载http://www.fastcgi.com/dist/mod_fastcgi.tar.gz

  2、解压apache安装文件。解压fastcgi安装文件到apache下的/src/modules/fas tcgi目录

  3、设定Apache加入mod_fastcgi模块:

  ./configure --activate-module=src/modules/fastcgi/libfastcgi.a --enabl e-module=info --enable-shared=info

  4、编译及安装

  $ make

  $ make install

  5、查看编译出来的执行文件是否含有 mod_fastcgi 模块:

  $ apacherunpath/httpd -l

  Compiled-in modules:

  http_core.c

  ...

  mod_fastcgi.c

  ...

  6、加入使用 mod_fastcgi 的相关设定

  编辑httpd.conf加入AddHandler fastcgi-script .fcg .fpl这一行建立youwwwpath/fcgi-bin目录,设置/fcgi-bin/目录指到youwwwpath/fcgi-bin /在httpd.conf加入ScriptAlias /fcgi-bin/ /usr/local/www/fcgi-bin/

  7、检测语法错误

  $ /apachepath/apachectl configtest

  Syntax OK --系统显示

  8、重新激活阿帕契服务器,让新设定生效:

  $ /usr/local/apache/sbin/apachectl graceful

  /usr/local/apache/bin/apachectl graceful: httpd gracefully restarted --系统显示

  PERL的FCGI模块:

  1、首先我们安装FastCGI在Perl下的模块。最新版本在http://www.fastcgi.com里下载。

  最新版本:FCGI-0.56.tar.gz

  2、下载 FCGI-0.45.tar.gz 并且解开

  $ gunzip -c FCGI-0.56.tar.gz | tar xvf -

  3、编译及安装

  $ perl Makefile.PL

  $ make

  $ make install

  4、测试

  $ cp echo.fpl {你www里Fastcgi所在目录}

  $ lynx {你www里echo.fpl的地址}

  如果顺利的话,应该会看到如下的结果:

  FastCGI echo (Perl)

  Request number 1

  No data from standard input.

  Request environment:

  DOCUMENT_ROOT=/usr/local/apache/htdocs

  FCGI_ROLE=RESPONDER

  GATEWAY_INTERFACE=CGI/1.1

  HTTP_ACCEPT=text/html, text/plain, application/applefile, application/

  x-metamai

  l-patch, sun-deskset-message, mail-file, default, postscript-file, aud

  io-file,

  x-sun-attachment, text/enriched, text/richtext, application/andrew-ins

  et, x-be2

  , application/postscript, message/external-body, message/partial, appl

  ication/p

  gp, application/pgp, video/mpeg, video/*, image/*, audio/*, audio/mod,

  text/sgm

  l, video/mpeg, image/jpeg, image/tiff, image/x-rgb, image/png, image/x

  -xbitmap,

  image/x-xbm, image/gif, application/postscript, */*;q=0.01

  HTTP_ACCEPT_ENCODING=gzip, compress

  HTTP_ACCEPT_LANGUAGE=en

  HTTP_HOST=localhost

  HTTP_NEGOTIATE=trans

  HTTP_USER_AGENT=Lynx/2.8.1pre.9 libwww-FM/2.14

  PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/sbin:/opt/kde/bi

  n:/home/m

  yhsu/bin:/usr/X11R6/bin:/usr/sbin:/opt/kde/bin:/usr/X11R6/bin:/usr/sbi

  n:/opt/kd

  e/bin

  QUERY_STRING=

  REMOTE_ADDR=127.0.0.1

  REMOTE_PORT=1427

  REQUEST_METHOD=GET

  REQUEST_URI=/fcgi-bin/echo.fpl

  SCRIPT_FILENAME=/usr/local/www/fcgi-bin/echo.fpl

  SCRIPT_NAME=/fcgi-bin/echo.fpl

  SERVER_ADMIN=myhsu@localhost.localdomain

  SERVER_NAME=localhost.localdomain

  SERVER_PORT=80

  SERVER_PROTOCOL=HTTP/1.0

  SERVER_SIGNATURE=

  Apache/1.3.6 Server at localhost.localdomain Port 80

  SERVER_SOFTWARE=Apache/1.3.6 (Unix) mod_fastcgi/2.2.2

  UNIQUE_ID=N1VIbX8AAAEAAAQnKKo

  More on its way ... wait a few seconds

  Initial environment:

  最后,给大家一个fastcgi编程的例子:

  #!/usr/local/bin/perl

  use CGI::Fast;

  my $counter = 0;

  while (my $cgi = new CGI::Fast) {

  print("Content-type: text/html\n\n");

  print("We have served $counter requests");

  $counter++;

  }

  

上一个:FreeBSD4.9下安装JDK1.4.2的说明
下一个:Unix下的E-mial炸弹

更多Unix/Linux疑问解答:
路由原理介绍
子网掩码快速算法
改变网络接口的速度和协商方式的工具miitool和ethtool
Loopback口的作用汇总
OSPF的童话
增强的ACL修改功能
三层交换机和路由器的比较
用三层交换机组建校园网
4到7层交换识别内容
SPARC中如何安装Linux系统(2)
SPARC中如何安装Linux系统(1)
用Swatch做Linux日志分析
实战多种Linux操作系统共存
浅析Linux系统帐户的管理和审计
Linux2.6对新型CPU的支持(2)
电脑通通透
玩转网络
IE/注册表
DOS/Win9x
Windows Xp
Windows 2000
Windows 2003
Windows Vista
Windows 2008
Windows7
Unix/Linux
苹果机Mac OS
windows8
安卓/Android
Windows10
如果你遇到操作系统难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,