我刚刚安装了Apache 2.2.17和PHP 5.3.4。 对于Apacheselect的Win32安装程序,对于PHP,我select了x86 VC6线程安全, 因此 ,我把Apache放在C:\ web \ Apache2.2,PHP放在C:\ web \ libraries \ PHP中。
事情是每次我尝试打本地主机上的PHP页面,我在我的日志文件中得到这个条目:
[Thu Dec 16 11:54:02 2010] [error] [client 127.0.0.1] File does not exist: C:/web/htdocs/web, referer: http://localhost/
DocumentRoot是C:\networking\ htdocs,它正常工作正常的.html文件( 它的工作! )。 但是,似乎Apache将所有.php页面的请求redirect到一个名为/ web htdocs的子文件夹。 我不明白。
所有的PHP安装程序都在httpd.conf中:
ScriptAlias /php/ "C:/web/libraries/php/" Action application/x-httpd-php "C:/web/libraries/php/php-cgi.exe"
和mime.types:
application/x-httpd-php php application/x-httpd-php-source phps
失踪
LoadModule php5_module "C:/web/libraries/PHP/php5apache2_2.dll"
看起来像PHP的人搞砸了。
为了获得上面的ScriptAlias行,我实际上在PHP安装程序中select了“Apache 2.2.x模块”,但它看起来像添加了PHP-CGI指令,这不是我想要的。
所以我自然select了“Apache CGI”来configuration“Apache 2.2.x模块”;)
下面是我现在在httpd.conf :
PHPIniDir "C:/web/libraries/PHP/" LoadModule php5_module "C:/web/libraries/PHP/php5apache2_2.dll" AddType application/x-httpd-php .php
我不确定这是否完全正确,但是有效。