请改用模块方式安装Apache.
将原来httpd.conf中安装PHP的语句去掉后,加上:
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php4
AddType application/x-httpd-php-source .phps
LoadModule php4_module "x:/server/program/php/sapi/php4apache.dll"最后一个改成你自己的路径.

解决方案 »

  1.   

    首先确定你的php版本,如果是php3,那么
      Header("HTTP/1.0 401 Unauthorized");是非法的
    应该是header("Status: 404 Not Found");
    另外如果你是IIS而不是apache的话用header('Status: 401.5 Unauthorized');也不能用http/
    根据提示没有说你的第一条语句有错误
    如果还不可以
    用header("Location: HTTP/1.0 400 Bad Request");看看的你http是否工作---应该是工作的--根据你说的
      

  2.   

    另外你的apache的 .htaccess 文件得有401这个错误的document。因为你想看的这个错误是有apache来提供的
    如果你用php来提供,那么这个apche是不起作用的。它不会检查你想看的error,如果想看404(或者其他)的错误,那么apache只是标记一下你相应的错误(有时候这个错误是你写的文件)所以,如果想看到404等错误你自己必须写一些html文件多看一下http://www.w3.org/Protocols/rfc2616/rfc2616会有大收获
    浅妄薄见,望与斟酌
      

  3.   

    Apache自己有默认的错误document这个不用我们担心。
    楼主的问题主要是用的是CGI方式安装的PHP(原来打错了),不支持HTTP验证的缘故。
      

  4.   


    http验证必须在模块方式下才支持,我刚开始也犯了这样的错误
    如果是apache的话可以这样
    LoadModule php4_module d:/php4/sapi/php4apache.dll
       AddModule mod_php4.c