Apache上mod_fcgid 搭建
刚一开始接触fastcgi,添加模块花了我将近一天时间,先将弄的流程写下来,以备忘:
mod_fcgid搭建
1. 安装 mod_fcgid模块
解压mod_fcgid.2.2.tgz
编辑Makefile, 修改top_dir = /usr/local/apache #apache的安装目录,如果apache的安装目录是/usr/local/apache2的话,就不要修改。
Make
Make install
2. 修改httpd.conf
添加:
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
ScriptAlias /fcgi-bin/ /usr/local/apache2/htdocs/fcgi-bin/
SocketPath /tmp/fcgid.sock
IdleTimeout 600
ProcessLifeTime 3600
MaxProcessCount 30 # 最多起的fcgi进程为30个
DefaultMinClassProcessCount 3
DefaultMaxClassProcessCount 100
IPCConnectTimeout 20
IPCCommTimeout 48
</IfModule>
增加:
这里DocumentRoot "/usr/local/apache2/htdocs" 请根据情况修改下面的Directory
<Directory "/usr/local/apache2/htdocs/fcgi-bin"> #fcgi-bin后面不能添加"/"
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
3. 安装fcgi开发库fcgi-2.4
解压
./configure
Make
Make install
编辑/etc/ld.so.conf,添加该库路径进去:/usr/local/lib
执行:ldconfig (动态链接库的管理命令)
4. 四、实验一下是否可以运行fcgi程序了。
进入:fcgi-2.4.0/examples,拷贝其中的echo.c至/usr/local/apache2/htdocs/fcgi-bin
cd /usr/local/apache2/htdocs/fcgi-bin,编译:gcc -o echo.fcgi echo.c –I/usr/local/lib -lfcgi
在网页上输入:http://localhost/fcgi-bin/echo.fcgi
如果正常,则网页上会得到想要的输出结果
注意:要保证权限。