0

我遇到了一个非常奇怪的事件。我最近在我的 .htaccess 文件中添加了以下行:

ErrorDocument 404 /404.php

这是文件中唯一的一行。

我有一个 php 函数,当用户访问该站点时记录 $_SERVER['SCRIPT_NAME'] 的值,以跟踪他们在站点上所采用的条目 url 和路径。在我添加 .htaccess 行之前,$_SERVER['SCRIPT_NAME'] 的值一直是正确的。现在,当用户访问该站点时,它将 404.php 显示为 $_SERVER['SCRIPT_NAME'] 的值。当他们转到另一个页面时,页面名称第一次在 $_SERVER['SCRIPT_NAME'] 中是正确的,但随后将值替换为 404.php。

有什么想法会导致这种情况吗?

4

1 回答 1

0

显然在 hostgator.com 他们的服务器默认 404 页面设置为 404.shtml。

所以为了纠正这个问题,我在我的 .htaccess 文件中添加了以下内容:

RewriteEngine on
RewriteRule ^(.*)\.shtml$ $1.php
于 2013-03-12T12:18:23.473 回答