第一步:下载安装的文件
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(非线程安全)版本,是针对PHP的FastCGI安装方式。
第二步:安装文件
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. 设置监听端口IfModule mod_fcgid.c> 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 路径的配置为: 注意:上面红色文字部分。在option中添加一个属性ExecCGI 4. 修改目录首页文件 在配置文件 httpd.conf 中查找 DirectoryIndex index.html 将其修改成: DirectoryIndex 指的是当客户浏览器访问的路径是一个目录时,Apache默认执行的文件。 打开PHP安装目录,即D:\WAMP\PHP,我们可以看到目录下有两个这样的文件 php.ini-development 和 php.ini-production,第一个是开发使用的配置文件,第二个是生产环境的配置,因为我们是在本机做开发,所以选择前者。将php.ini-development复制一份到同目录下,并改名为 php.ini。这个php.ini 就是当前使用的配置文件,以下几步都是在修改这个php.ini文件的内容。要注意的是,修改php.ini文件后需重新启动Apache服务,新设置才会生效。 1. 指定PHP扩展库的存放目录 在Windows下PHP的扩展库通常以 DLL 形式存放在PHP的ext目录中。 extension_dir 表示PHP扩展库的具体目录,以便调用相应的DLL文件。 2. 开启相应的扩展库 默认情况下许多PHP的扩展库都是关闭的,比如默认PHP不支持连接Mysql数据库,需开启相应的扩展库。 把以上extension 前面的分号 “;” 去掉。如果你希望加载其它扩展模块,方法相同,只要去掉前面的分号即可。 3. 让PHP支持短标签 在 php.ini 配置文件查找 short_open_tag = Off (大概在266行)把它修改成:short_open_tag = On 让其支持短标签。 4. 配置PHP的Session功能 在使用session功能时,我们必须配置session文件在服务器上的保存目录。我们需要为session建立一个可读写的目录,这个目录最好独立于网站目录之外。 5. 配置PHP的文件上传功能 同session一样,在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败。 PHP默认上传文件大小不超过2M,要想上传大于2M的文件,请参考文档 配置php.ini实现文件上传功能。 6. 设置时区 在 php.ini 配置文件查找 ;date.timezone = ,去掉前面的分号”;” 改为如下: date.timezone是PHP5.1开始新增加的配置参数,用来设置时区。默认date.timezone是被注释掉的,也就是默认时区是UTC格林威治标准时间。 将如下代码保存为index.php文件,放到D:\WAMP\WWW目录下面。
以我们所修改的为例:当客户浏览器访问一个目录时,Apache会去找该目录下的index.html,如果没有再找index.htm,还没有再找 index.php。都找不到则默认显示该目录下的文件列表。参考文档:如果防止Apache显示文件列表第四步:配置PHP
使用文本工具打开php.ini文件,查找extension_dir = “ext”,也就是在 On windows 下面那一行。把它前面的分号”;”去除掉,改为如下:
这里我们开启一些常用的扩展库。
查找 ; Windows Extensions(大概在941行),在它的下面是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扩展的说明。
php的代码一般包含在的标签内,设置 short_open_tag = On 之后,可以写成更简洁的形式:。
这里把目录上建在了D:\WAMP\sessiontmp,然后在 php.ini 配置文件中找 ;session.save_path = “/tmp” (大概在1467行),去掉前面的分号”;” ,改为如下:
我们建立一个可读写的目录文件夹 D:\WAMP\fileuploadtmp,然后在 php.ini 配置文件中找到 ;upload_tmp_dir = (大概875行),修改为:
我们这里改为 date.timezone = PRC(PRC,People’s Republic of China,中华人民共和国),也就是日期使用中国的时区。这样可以解决时间相差八小时的问题。第五步:测试