Php 如何关闭Zend Server中的默认HTTP状态代码错误?

Php 如何关闭Zend Server中的默认HTTP状态代码错误?,php,apache,http-status-codes,zend-server,Php,Apache,Http Status Codes,Zend Server,每次我在PHP代码中返回一些状态代码时,Zend Server都会在我的网站底部附加以下错误,并附上我返回的HTTP代码消息。例如,如果我返回401,它会在我的401页上附加另一个401错误: 有没有办法把它关掉?我用 编辑: 这似乎是默认的Apache错误处理。有没有办法禁用它?最好没有我自己的错误页面 附加编辑: 我试图用ErrorDocument指令编辑我的.htaccess。它仍然会给我错误页面空白页面+Apache错误,就像上面的截图一样 我在服务器上安装的ZendServer4不

每次我在PHP代码中返回一些状态代码时,Zend Server都会在我的网站底部附加以下错误,并附上我返回的HTTP代码消息。例如,如果我返回401,它会在我的401页上附加另一个401错误:

有没有办法把它关掉?我用

编辑:

这似乎是默认的Apache错误处理。有没有办法禁用它?最好没有我自己的错误页面

附加编辑:

我试图用ErrorDocument指令编辑我的.htaccess。它仍然会给我错误页面空白页面+Apache错误,就像上面的截图一样

我在服务器上安装的ZendServer4不会出现这种情况。我在本地主机tho上使用ZendServer5。是否可能是Zend方面的某种bug或错误配置

行为:

在所有测试用例中,我都返回401

当我在.htaccess中使用默认的ZendServer配置+ErrorDocument指令时,我会在下面附加我自己的错误页+Apache错误页

当我使用默认的ZendServer配置+禁用我自己的ErrorDocument指令时,我只得到Apache错误页面


当我将Apache错误页面更改为空白文件并使用我自己的ErrorDocument指令时,我获得了所需的行为,但是错误404仍然会在我自己的下面附加默认Apache错误。

正如您在Apache httpd上看到的,您无法禁用它

如果您只是不想要输出,则有两种选择:

# you *HAVE TO* to put at least one character (here it's a space)
ErrorDocument <errorcode> `' '` 

# if you really want to have 0 character, use a blank file
ErrorDocument <errorcode> /var/www/blank
尽管您必须为每个要禁用的错误代码设置此选项


您可以在httpd服务器的conf文件或.htaccess文件或VHost中进行这些更改,尽管我不知道Zend服务器中的conf文件在哪里。

正如您在Apache httpd上看到的,您不能禁用它

如果您只是不想要输出,则有两种选择:

# you *HAVE TO* to put at least one character (here it's a space)
ErrorDocument <errorcode> `' '` 

# if you really want to have 0 character, use a blank file
ErrorDocument <errorcode> /var/www/blank
尽管您必须为每个要禁用的错误代码设置此选项


您可以在httpd服务器的conf文件或.htaccess文件或VHost中进行这些更改,尽管我不知道conf文件在Zend服务器中的位置。

我认为您不一定要禁用该错误。您需要做的是找出报告的错误,然后通过日志文件,您可能会发现一个权限问题或一个实际失败并转储其核心的PHP脚本

要覆盖apache中的默认错误页,可以将以下行放在.htaccess文件或httpd.conf配置中

ErrorDocument 401 /path/to/the/new/error/page.html
这适用于所有要覆盖的错误页。因此,只需将这些错误的状态代码更改为503..等等


apache文档中的更多信息:

我认为您不一定要禁用该错误。您需要做的是找出报告的错误,然后通过日志文件,您可能会发现一个权限问题或一个实际失败并转储其核心的PHP脚本

要覆盖apache中的默认错误页,可以将以下行放在.htaccess文件或httpd.conf配置中

ErrorDocument 401 /path/to/the/new/error/page.html
这适用于所有要覆盖的错误页。因此,只需将这些错误的状态代码更改为503..等等


apache文档中的更多信息:

他在Zend Server上,因此apache文档不适用。Zend Server基于apache httpd服务器:如果你不会说极客,我将为你翻译:这是一个预打包的apache和PHP版本,可以用最少的努力创建和运行一个简单的PHP环境。从年开始,我尝试将ErrorDocument指令应用到.htaccess中,但没有多大成功。我在htaccess中定义的网页+错误文档页面中还附加了一些其他自定义错误。我想我会尝试在自己的机器上安装Zend Server,并得到与您相同的错误。你能提供你的操作系统版本和Zend Server的确切版本吗?它是Windows XP和ZendServer 5.0,带有PHP 5.2:第一个下载链接。他在Zend Server上,所以Apache文档不适用。Zend Server基于Apache httpd服务器:如果你不说极客,我将为您翻译一下:它是Apache和PHP的预打包版本,您只需花费很少的精力就可以创建并运行一个简单的PHP环境。从年开始,我尝试将ErrorDocument指令应用到.htaccess中,但没有多大成功。我在htaccess中定义的网页+错误文档页面中还附加了一些其他自定义错误。我想我会尝试在自己的机器上安装Zend Server,并得到与您相同的错误。你能提供你的操作系统版本和Zend Server的确切版本吗?它是Windows XP和ZendServer 5.0,带有PHP 5.2:第一个下载链接。当错误页面被打开时,你希望发生什么?什么都没有。我使用自己的自定义错误页面。例如:如果出现问题,我称之为new ErrorPage 500。所以当前的问题是,我修改了错误500的标题,得到了定制的错误页面和附加在这个Apache错误页面上的下面的代码
. 我想扔掉它。你试过在管理控制台中查看所有配置选项吗?也许这是一种选择。默认的zend服务器配置很可能会禁用重写.htaccess文件中的errordocument指令的功能。Apache有一个非常强大的权限系统,用于说明在哪里可以配置什么,等等。。事实上,我会在Zend论坛上问。你一定会得到更好的答案:然后把你的答案贴在这里。实际上,我在ZendServer管理中心检查了选项,但我不确定我是否在寻找正确的东西。但好主意,我会尝试在Zend论坛上提问,然后在这里回答。我在404页面上也遇到了同样的问题,因为Apache出于某种原因截取了状态码,对此感到愤怒,并放弃了。因为它是一个测试环境,所以我只设置了ErrorDocument,但这不是解决方案……也许我应该再看看发生了什么。顺便问一下,ZendServer4是否在FastCGI下使用PHP?当错误页面被打开时,您希望发生什么?什么都没有。我使用自己的自定义错误页面。例如:如果出现问题,我称之为new ErrorPage 500。所以现在的问题是,我修改了错误500的标题,得到了定制的错误页面和附加在这个Apache错误页面上的bellow。我想扔掉它。你试过在管理控制台中查看所有配置选项吗?也许这是一种选择。默认的zend服务器配置很可能会禁用重写.htaccess文件中的errordocument指令的功能。Apache有一个非常强大的权限系统,用于说明在哪里可以配置什么,等等。。事实上,我会在Zend论坛上问。你一定会得到更好的答案:然后把你的答案贴在这里。实际上,我在ZendServer管理中心检查了选项,但我不确定我是否在寻找正确的东西。但好主意,我会尝试在Zend论坛上提问,然后在这里回答。我在404页面上也遇到了同样的问题,因为Apache出于某种原因截取了状态码,对此感到愤怒,并放弃了。因为它是一个测试环境,所以我只设置了ErrorDocument,但这不是解决方案……也许我应该再看看发生了什么。顺便问一下,ZendServer4是否在FastCGI下使用PHP?我想我的措辞有点混乱,因为我已经编辑了我的原始帖子。没有失败,我确实希望该页面是401,我只希望有我自己的自定义401错误,没有下面附加的默认Apache错误。嘿,这其实很简单。我修改了我的答案。是的,嗯,没那么容易。我现在的.htaccess中正好有这个,但它不起作用。我仍然得到一个附加的错误:/我认为我的措辞有点混乱,已经编辑了我的原始帖子。没有失败,我确实希望该页面是401,我只希望有我自己的自定义401错误,没有下面附加的默认Apache错误。嘿,这其实很简单。我修改了我的答案。是的,嗯,没那么容易。我现在的.htaccess中正好有这个,但它不起作用。我仍然得到一个附加的错误:/