如何Apache下配置FASTCGI

我请说下,如何Apache下配置FASTCGI
最新回答
只是偶尔想起你

2024-11-05 03:49:22

第步:载安装文件
1. Apache 版本 httpd-2.2.21-win32-x86-no_ssl.msi
2. mod_fcgid 版本 mod_fcgid-2.3.6-win32-x86.zip
3. MySQL 版本 mysql-5.5.19-win32.msi
4. PHP 版本 php-5.3.5-nts-Win32-VC6-x86.zip
提示:
1. 建议选择SSL功能Apache版本完发我使用httpd-2.2.21-win32-x86-no_ssl.msi
2. 建议选择由Apache官所提供mod_fcgid 作FastCGI模块我使用目前新版本2.3.6 mod_fcgid官址
3. Windows安装MySQL选择.msi安装包格式我选择mysql-5.5.19-win32.msi 双击根据向导安装即简单便
4. PHP我选择用php-5.3.5-nts-Win32-VC6-x86.zip 版本nts(非线程安全)版本针PHPFastCGI安装式
第二步:安装文件
1. 要安装磁盘建文件夹管理便我D盘根目录创建WAMP文件夹 D:\WAMP(WAMP windows+apache+mysql+php缩写)
2. WAMP文件夹创建WWW文件夹用存放PHP网站程序D:\WAMP\WWW
3. 安装Apache服务器Apache服务器安装 D:\WAMP\Apache 文件夹具体Apache安装程参考文档 Apache安装图解
4. 载php-5.3.5-nts-Win32-VC6-x86 解压 D:\WAMP\PHP 文件夹
5. 安装MySql数据库MySQL安装 D:\WAMP\MySQL文件夹具体MySQL安装程参考文档MySQL安装图解
第三步:配置 Apache
首先使用文本编辑工具(推荐 EditPlus )打 D:\WAMP\Apache\conf\httpd.conf 文件文件Apache配置文件面几步都修改文件内容
要注意修改完 httpd.conf 文件需重新启Apache服务新设置才效
1. 设置监听端口
打 httpd.conf 文件找 Listen(概第46行)面数字改8080:
Listen 8080

参数用设置Apache服务器监听端口般默认80修改8080 避免Windows 2003系统IIS端口号冲突没启用IIS使用默认80端口号
2. 修改网站存放目录
我知道Apache默认网站存放目录Apache安装目录htdocs文件夹更改网站存放目录必须修改相应Apache配置
配置文件 httpd.conf 查找 DocumentRoot其修改指向网站目录确文件夹我改
DocumentRoot "D:/WAMP/www"

同查找 This should be changed to whatever you set DocumentRoot to面行 DocumentRoot >其修改自配置DocumentRoot 路径我修改:

3. mod_fcgid 配置
我载 mod_fcgid-2.3.6-win32-x86.zip 压缩包mod_fcgid.so文件复制apachemodules目录
打 httpd.conf 文件加入配置:
LoadModule fcgid_module modules/mod_fcgid.so

AddHandler fcgid-script .fcgi .php
#php.ini存放目录
FcgidInitialEnv PHPRC "D:/WAMP/PHP"
# 设置PHP_FCGI_MAX_REQUESTS于或等于FcgidMaxRequestsPerProcess防止php-cgi进程处理完所请求前退
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
#php-cgi每进程请求数
FcgidMaxRequestsPerProcess 1000
#php-cgi进程数
FcgidMaxProcesses 5
#执行间
FcgidIOTimeout 120
FcgidIdleTimeout 120
#php-cgi路径
FcgidWrapper "D:/WAMP/PHP/php-cgi.exe" .php
AddType application/x-httpd-php .php

修改DocumentRoot 路径配置:

Options Indexes FollowSymLinks ExecCGI
Order allow,deny
Allow from all
AllowOverride All

注意:面红色文字部option添加属性ExecCGI
4. 修改目录首页文件
配置文件 httpd.conf 查找 DirectoryIndex index.html 其修改:
DirectoryIndex index.html index.htm index.php

DirectoryIndex 指客户浏览器访问路径目录Apache默认执行文件
我所修改例:客户浏览器访问目录Apache找该目录index.html没再找index.htm没再找 index.php都找则默认显示该目录文件列表参考文档:防止Apache显示文件列表
第四步:配置PHP
打PHP安装目录即D:\WAMP\PHP我看目录两文件 php.ini-development php.ini-production第发使用配置文件第二产环境配置我本机做发所选择前者php.ini-development复制份同目录并改名 php.iniphp.ini 前使用配置文件几步都修改php.ini文件内容要注意修改php.ini文件需重新启Apache服务新设置才效
1. 指定PHP扩展库存放目录
WindowsPHP扩展库通 DLL 形式存放PHPext目录
使用文本工具打php.ini文件查找extension_dir = "ext" On windows 面行前面号;除掉改:
extension_dir = "D:/WAMP/PHP/ext"

extension_dir 表示PHP扩展库具体目录便调用相应DLL文件
2. 启相应扩展库
默认情况许PHP扩展库都关闭比默认PHP支持连接Mysql数据库需启相应扩展库
我启些用扩展库
查找 ; Windows Extensions(概941行)面extension列表
找扩展:
;extension=php_curl.dll
;extension=php_gd2.dll
;extension=php_mbstring.dll
;extension=php_exif.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_odbc.dll
;extension=php_sockets.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll

extension 前面号 ; 掉希望加载其扩展模块相同要掉前面号即
提示1:重启Apache提示 unable to load dynamic library......php_curl.dll加载php_curl.dll错误解决拷贝 PHP 目录 libeay32.dll ssleay32.dll windows 目录或 windows/system32 目录要系统 Path 环境变量包含路径想拷贝直接 PHP 路径放系统 Path 环境变量 右击我电脑=>属性=>高级=>环境变量=>系统变量Path双击打PHP路径加号;再前面( ;D:\WAMP\PHP )添加进OK重启Apache再提示该错误
提示2:Exif 扩展用显示图片 exif 信息该扩展需要 mbstring.dll 支持所必须 extension=php_exif.dll 行写extension=php_mbstring.dll 面
提示3:PHP自带扩展库能满足需要 pecl.php.net 查找并载需要库windows用户 pecl4win.php.net 或者
http://downloads.php.net/pierre/
载已经编译DLL文件
http://museum.php.net/php5/
载PECL集合压缩包
提示4:找php_zip.dll其实php5.3始已经集zip扩展用 找zip扩展说明
3. 让PHP支持短标签
php.ini 配置文件查找 short_open_tag = Off (概266行)修改:short_open_tag = On 让其支持短标签
php代码般包含标签内设置 short_open_tag = On 写更简洁形式:
4. 配置PHPSession功能
使用session功能我必须配置session文件服务器保存目录我需要session建立读写目录目录独立于网站目录外
目录建D:\WAMP\sessiontmp php.ini 配置文件找 ;session.save_path = "/tmp" (概1467行)掉前面号; 改:
session.save_path = "D:/WAMP/sessiontmp"