举个例子,我的域名是 example.com,这是一个 IIS 7.5 上的 ASP.NET 网站。我想安装 phpBB 并在 example.com/forum 上使用它。
如果我将 phpBB 设置为其自己的应用程序(在 example.com 之外),我可以在与 ASP.NET 应用程序相同的 IIS 服务器上正常运行,但是当我尝试将其作为应用程序安装在 example.com 网站内或作为 example.com 内的虚拟目录安装时,安装程序在尝试连接到 MySQL 数据库时会挂起。我从 IIS 收到 HTTP 500 错误:
HTTP Error 500.0 - Internal Server Error
C:\php\php-cgi.exe - The FastCGI process exceeded configured request timeout
我尝试安装的两个 PHP 应用程序都出现了此错误。在这两种情况下,都是在应用程序尝试连接数据库时发生的。
我完全不确定如何修复这个问题,甚至不知道是否可以修复。普通的 PHP 页面运行良好(例如,按<? print phpinfo(); ?>
预期运行)。有什么建议吗?
答案1
您是否看过 phpBB 的文档,了解如何在子目录中运行?您可能需要更改常量(通常在配置文件中)以反映 webroot。我之前设置的 90% 开源 LAMP 应用程序都是这种情况。
答案2
根据您对问题的描述,如果在 example.com 以外的其他网站上运行 PHP 脚本,我假设 PHP 已经在您的服务器上安装并运行。
好的,这里有两个问题:
- 首先,IIS 是哪个版本的?
- 第二个问题:您可以在 example.com 网站上运行一个简单的 PHP 页面吗,或者这也会导致同样的错误?
更新:
这似乎与 PHP 根本无关,而具体与 PHPBB 有关;我还建议检查在虚拟目录中运行的文档,并尝试在另一个网站的 VD 中进行设置,以完全排除与 example.com 相关的任何内容。
答案3
phpBB 可能要求您在配置的某个地方指定适当的 webroot;这在许多 LAMP Web 应用程序中很常见。