2009年3月26日星期四

PHP+Apache在Windows上的安装配置

该方法目前主要针对php5.2.6 + apache2.2.9,不过我想,更高的版本也应该适用,其中apache使用的Window安装版本,php使用的是zip版本。


具体如下:
1、Apatech安装(由于是自动安装版,就不多说了,一直下一步,过程中适当配置一下就OK)

2、PHP安装 -> 解压 -> 更改extension_dir = “./”为extension_dir = “D:/PHP/PHP/ext” -> 设置环境变量(PHP目录与PHP ext目录[;D:\phpserver\php;D:\phpserver\php\ext]) -> 开启想要的扩展

设置检索目录 DirectoryIndex index.php index.html

#************************************
# apatech2.2.9
#************************************
PHPIniDir "e:/phpserver/php"   //实际路径需要自己修改
LoadModule php5_module "e:/phpserver/php/php5apache2_2.dll"  //实际路径需要自己修改
addType application/x-httpd-php .php

php.ini配置内容(增加Xdebug功能):
************************************************************
[Xdebug]
extension=php_xdebug-2.0.3-5.2.5.dll
xdebug.auto_trace=on
xdebug.collect_params=on
xdebug.collect_return=on
xdebug.trace_output_dir=E:\phpdebug //日志输出文件夹
xdebug.profiler_enable=on
xdebug.profiler_output_dir=E:\phpdebug //日志输出文件夹

*************************************************************

Apache显示目录httpd.conf配置方法:
#去掉Indexes则不显示目录
Options Indexes FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all

其它说明:
1、关于“You don't have permission to access / on this server.”的错误处理:
配置文件:
Options FollowSymLinks
AllowOverride None
Order deny,allow
deny from all
Satisfy all
然后试着把deny from all中的deny改成了allow,保存后重起了apache,然后再一测试我的网页,哈哈!居然问题就出在这,访问测试网站完全正常了。

2、要用rewrite去掉index.php,需要把 AllowOverride None 改成 AllowOverride all。
同时启用rewrite模块,并写.htaccess这个文件:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|styles|javascripts|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

注意第二行的images|sytles|javascripts|,要加上它进行过滤才能正确获得相关目录的链接
去掉Kohana配置文件中的:$config['index_page'] = 'index.php'; 为 $config['index_page'] = '';



0 评论: