【发布时间】:2011-11-18 08:01:02
【问题描述】:
我有一台 Windows 7 笔记本电脑。我下载了 PHP 5.2.8。我下载了 Apache 2.2。
我为 PHP 安装运行了 MSI,我知道不推荐这样做,但我尝试了多次正常路径但没有成功。
我正在运行 apache,它显示“正在运行所有 apache 服务”。当我进行安装时,我将其设置为“localhost”。
我在控制面板中选中了 CGI 复选框。
我在 C:\inetpub\wwwroot 中放置了一个简单的文件 test.php ...但是当双击该文件时,它会尝试下载该文件而不是将其作为网页打开。
我已经在谷歌上搜索了几个小时,但找不到合适的修复方法。我已经清除了我的缓存,但仍然没有运气。
我还将 apache 设置为侦听端口 8080,以确保之前没有其他任何东西在使用端口 80。
有什么想法吗??
谢谢!
更新——我错过了 php5apache2.dll ...我将它放在 PHP 目录中,但结果仍然相同。我也尝试通过 IE 浏览到文件位置,不幸的是,它也没有改变任何东西。
再次更新,- - DOH! - - 没有意识到它是 localhost/test.php 或者下面的答案是什么。当我这样做时,我得到一个服务器错误页面..这比我猜的要好:)
Server Error in Application "DEFAULT WEB SITE"
HTTP Error 500.0 - Internal Server Error
An unknown FastCGI error occured
Module FastCgiModule
Notification ExecuteRequestHandler
Handler PHP
Error Code 0x8007010b
Requested URL http://localhost:80/test.php
Physical Path C:\inetpub\wwwroot\test.php
Logon Method Anonymous
Logon User Anonymous
最可能的原因:
•IIS 收到请求;但是,在处理请求期间发生了内部错误。此错误的根本原因取决于处理请求的模块以及发生此错误时工作进程中发生的情况。
•IIS 无法访问网站或应用程序的 web.config 文件。如果 NTFS 权限设置不正确,就会发生这种情况。
•IIS 无法处理网站或应用程序的配置。
•经过身份验证的用户没有使用此 DLL 的权限。
•请求已映射到托管处理程序,但未安装 .NET 可扩展性功能。
当我尝试启动/运行 apache 时,它会出错。所以当我运行 apache 测试配置时,我收到以下消息: httpd.exe:C:/Apache/conf/httpd.conf 第 1 行的语法错误:无法将 C:/php/php5apache2_2.dll 加载到服务器中:找不到指定的模块。
但是,当我浏览到那个导演时,我确实在那里看到了那个 dll 文件!呃……
想法?
【问题讨论】:
-
你能确认 apache 的配置文件有使用 php 模块处理 .php 文件的指令吗?尝试按照here 的说明将 php 作为 apache 处理程序运行。你还说当文件被双击时它要求下载。您必须通过浏览器访问该文件才能让 php 执行它。
-
您必须导航到页面,例如 localhost ,而不是双击。
-
当我打开 IE 并输入路径 C:/inetpub...etc....myFile.php,它做同样的事情,只是尝试下载文件。但我可能已经发现了问题,提到了一点 php5apache2.dll,但我的 php 文件夹目录中没有这个。所以我正在浏览互联网试图找到某个地方来获取这个文件。
-
好的,我下载了那个文件并将它放在我的 php 文件夹中,但是当我使用 IE 并导航到 php 文件目录时,同样的事情...... =\
-
手动安装 apache2 和 php5 后我遇到了同样的问题。经过长时间的调整,我意识到问题出在文件/目录路径中区分大小写。显然,Windows 上的 apache 非常重视区分大小写。希望它可以帮助别人!
标签: php apache iis windows-7 installation