3

我不知道过去发生了什么变化——这曾经有效:

在我的服务器上访问如下 URL 不起作用:http ://www.domain.com/folder/file.php?variable=a&variable2=b

我收到“未找到请求的地址 406.shtml 在此服务器上未找到”。信息。

但是,如果我访问它,它可以工作: http: //www.domain.com/folder/file.php

在 file.php 之后添加问号是它中断的原因。我以前从未遇到过这样的问题。起初我认为 .htaccess 与它有关,但我知道它过去根本没有被编辑过。

有任何想法吗?我正在使用 CakePHP,但我怀疑这与它有什么关系;这以前有效。欢迎所有建议!

编辑: /app/webroot .htaccess 文件有这个:

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

</IfModule>

据我所知,这根本没有改变,并且 URL 与它一起使用。/public_html/ 下的 .htaccess 文件包含以下内容:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
<IfModule mod_rewrite.c>
   RewriteEngine on


   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]


</IfModule>
4

2 回答 2

1

您的 apache 配置中有错误。它试图为您提供 406 错误页面,但找不到它。如果您修复它,您可能会收到更多信息错误。

此链接可能会帮助您解决问题的根源:http: //urbangiraffe.com/2005/08/20/mysterious-406-error/

也可能是由mod_security. 如果它不是您的服务器,您应该询问您的托管服务提供商。

于 2010-10-19T15:50:44.670 回答
0

99.9% 的可能性是由您的 htaccess 文件更改引起的。某些东西正在检查查询字符串并重定向到或尝试加载不存在的文件。

于 2010-10-19T15:51:46.617 回答