Apache symfony中的http基本身份验证错误

Apache symfony中的http基本身份验证错误,apache,symfony,fastcgi,basic-authentication,Apache,Symfony,Fastcgi,Basic Authentication,在使用Symfony 2.2完成的项目(一个web API)中,我设置了http基本身份验证。它在本地工作正常(在windows上一个XAMPP稳定版本中进行了测试,在本地mac上使用Lion测试了mysql db),所以我认为这不是密码编码问题。 我们有一个托管服务器,安装了几个版本的php。我们的应用程序目录中的PHPinfo使用CGI/FastCGI表示5.4.16。我们只能通过.htaccess更改参数 目前,我们在主站点的子目录中有它,例如,web等…) 在dev.log中: secu

在使用Symfony 2.2完成的项目(一个web API)中,我设置了http基本身份验证。它在本地工作正常(在windows上一个XAMPP稳定版本中进行了测试,在本地mac上使用Lion测试了mysql db),所以我认为这不是密码编码问题。 我们有一个托管服务器,安装了几个版本的php。我们的应用程序目录中的PHPinfo使用CGI/FastCGI表示5.4.16。我们只能通过.htaccess更改参数 目前,我们在主站点的子目录中有它,例如,web等…)

在dev.log中: security.INFO:发生身份验证异常;重定向到身份验证入口点(在SecurityContext中找不到令牌。)[] 因此,我怀疑是fastcgi问题没有传递授权参数,正如src/symfony/src/symfony/Component/HttpFoundation/ServerBag.php中所解释的那样 但我不能让它工作,可能是因为我不在根域目录中,重定向到/web? 我在phpinfo没有看到任何关于mod重写的内容。也许它没有启用

我的访问权限:

DirectoryIndex app.php
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{ENV:REDIRECT_STATUS} ^$
    RewriteRule ^app\.php(/(.*)|$) %{CONTEXT_PREFIX}/$2 [R=301,L]
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule .? - [L]
    RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$
    RewriteRule ^(.*) - [E=BASE:%1]
    RewriteRule .? %{ENV:BASE}app.php [L]
#Esto por el tema del fastcgi en apache
RewriteCond %{HTTP:Authorization} ^(.+)$
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
SetEnv TZ Europe/Madrid
</IfModule>
<IfModule !mod_rewrite.c>
    <IfModule mod_alias.c>
        RedirectMatch 302 ^/$ /app.php/
    </IfModule>
</IfModule>
DirectoryIndex app.php
重新启动发动机
RewriteCond%{ENV:REDIRECT_STATUS}^$
重写规则^app\.php(/(.*)|$)%{CONTEXT_PREFIX}/$2[R=301,L]
RewriteCond%{REQUEST_FILENAME}-f
重写规则[L]
RewriteCond%{REQUEST_URI}:$1^(/.+)(.+):\2$
重写规则^(.*)-[E=基:%1]
重写规则.?%{ENV:BASE}app.php[L]
#阿帕奇的快速CGI项目
重写条件%{HTTP:Authorization}^(+)$
重写规则。*-[E=HTTP\U授权:%{HTTP:AUTHORIZATION}]
欧洲/马德里
重定向匹配302^/$/app.php/

我将感谢任何帮助/建议/想法来解决这个问题。提前感谢您

php版本
5.14.16
,您确定吗??)是的,它是6月6日发布的。在这种情况下,这是
5.4.16
而不是
5.14.16
!也就是说,我不认为这是你遇到的问题……是的,对不起,我没有意识到这是一个打字错误,花了太多时间浏览答案。谢谢你的阅读。