首页 > 解决方案 > IIS 上托管的 Concrete5 的路由问题

问题描述

我有一个在 Apache 服务器上运行良好的具体网站,但是必须将它移到 IIS 上,以便它可以托管在与 ASP 站点相同的位置。虽然我对微软很满意,但我对 PHP、Concrete5 等一无所知,所以希望得到托管公司的支持,但托管公司现在对此一无所知。IIS 有一个 index.php 的默认页面,并且应用程序池设置为始终运行服务器使用 Helicon Ape(不知道)来处理包含以下内容的 .htaccess 文件。

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php/$1 [L]

大多数情况下,该站点运行正常,但偶尔会停止。发生这种情况时,它会为所有页面返回 404,并且通常会在几分钟内自行排序(重新启动应用程序池也可以解决问题,但几乎不是答案)。虽然它失败了,但我看到通常从www.mysite.com更改为www.mysite.com/index.php/mypage的地址更改为www.mysite.com/index.php/index.php(尽管在工作时url 也将返回主页)。此外,我知道服务器仍在运行,因为在发生这种情况时,我仍然可以 ping 它并获得响应。

考虑到这可能是应用程序池问题,我尝试重新启动池 2 小时,但这并没有解决问题。主持人声称这是一个罕见的间歇性路由问题,无论是具体的还是它的 .htaccess 要求,但他们无法就此提供进一步的建议。

标签: phpiisroutesconcrete5

解决方案


推荐阅读