Php 部署Symfony2应用程序获取fosuserbundle错误
我已在另一台具有相同规格的计算机上安装了我的Symfony项目,使用fosuserbundle登录时收到以下错误: 由于系统问题,无法处理身份验证请求。 我在应用程序/日志文件中找不到任何感兴趣的内容。我在开发模式下运行应用程序。手动或从控制台清除缓存。我用doctor:database:create设置数据库。它使用Php 部署Symfony2应用程序获取fosuserbundle错误,php,symfony,fosuserbundle,Php,Symfony,Fosuserbundle,我已在另一台具有相同规格的计算机上安装了我的Symfony项目,使用fosuserbundle登录时收到以下错误: 由于系统问题,无法处理身份验证请求。 我在应用程序/日志文件中找不到任何感兴趣的内容。我在开发模式下运行应用程序。手动或从控制台清除缓存。我用doctor:database:create设置数据库。它使用fos:user:create创建新用户,并成功保存到数据库中 我不知道从这里走到哪里。您可能在参数.yml中设置了错误的密码,因此它可能无法连接到数据库。 当应用程序无法连接到D
fos:user:create
创建新用户,并成功保存到数据库中
我不知道从这里走到哪里。您可能在
参数.yml中设置了错误的密码,因此它可能无法连接到数据库。
当应用程序无法连接到DB以检查用户是否真实时,就会出现上述错误。
(我也遇到了同样的错误,这是我的问题,希望能有所帮助)检查以确保您的数据库是最新的。这解决了我收到此错误时的问题
php app/console doctrine:schema:update --dump-sql
编辑:在开发环境中工作时,拼写出现了相同的问题。我更新了我的用户模型,每次尝试登录时都会遇到您的错误。通过运行解决:
app/console cache:clear
编辑:再次出现同样的问题。这一次是因为我将项目移动到了另一台服务器,忘记了更新parameters.yml
以匹配服务器的MySQL凭据。在部署过程中,通常是环境问题(假设应用程序在开发站中正常工作)。
FOSUserBundle它很棒,但由于某些原因,它没有很好地显示出它背后的问题
如错误消息所示:“…由于系统问题而无法处理”
如果清理缓存或更新模式都有效,我建议尝试绕过FOSUserBundle(通常问题是代码/配置和服务器环境之间的问题),并让您与默认errorhandler和logger的捆绑包通知任何问题
在我的情况下,这是一个司机的问题。(安装pdo)
要绕过它,最简单的方法是删除security.yml中控制器的安全性
access_control:
{ path: ^/SomeCRUD, role: IS_AUTHENTICATED_ANONYMOUSLY }
然后,如果您访问它,它应该能够记录问题,并且您应该能够修复它
希望它有助于确保您的用户实体实现
如果您使用条令:database:create生成了数据库,那么您的字符集可能不合适。因为用户表有一个序列化字段(角色),所以错误的编码可能是原因
您可以通过查看应用程序/日志和数据库排序来检查这一点
或者,检查一下,我也有同样的问题。我能够用php应用程序/控制台原则构建和填充数据库:schema:update--force;php应用程序/控制台原则:fixture:load代码>但symfony应用程序无法访问数据库
问题是我在参数中设置了数据库\u主机:127.0.0.1
。yml
但是mysql
希望我通过本地主机连接。更新参数.yml
修复了该问题。我仍然对命令行的工作原理感到困惑…我遇到了完全相同的问题。我采取的步骤如下:
我清除了缓存
我关闭了所有的db表,并通过迁移重新创建了它们
在约束方法的参数的实体注释中,我将使用单引号(')的地方替换为双引号(“)
例子
//src/SomeBundle/Model/user.php
这被替换为
<?php
/**
*
* @Assert\File(
* maxSize="512k",
* mimeTypes={"image/png", "image/jpeg", "image/gif"},
* mimeTypesMessage= "Please upload a valid png, gif or jpeg file below 512Kb"
* )
*/
private $profilePic;
?>
完成此操作后,我再次尝试了身份验证,它成功了!我遇到了问题Symfony 2.3,当我执行应用程序/控制台原则:schema:update--dump sql时,结果就是这样
在fos_用户上放置索引UNIQ_957A647992FC23A8;
在fos_用户上放置索引UNIQ_957A6479A0D96FBF;
更改表fos\u用户删除用户名、删除用户名\u规范、删除电子邮件、删除电子邮件\u规范、删除启用、删除盐、删除密码、删除最后一次登录、删除锁定、删除过期、删除过期时间、删除确认令牌、删除密码\u请求时间、删除角色、删除凭据过期时间、删除凭据过期时间
在我将doctrine bundle从1.2更新到1.3之后,它又开始工作了
信息:
看起来错误如下:
由于系统问题,无法处理身份验证请求
太笼统了,没有说明问题在哪里(关于这件事有一个问题)
我通过检查日志并查看发生了什么(在var/logs/dev.log
中),解决了我的问题,希望这对某人有所帮助
在我的具体案例中,parameters.yml about database中有一个错误的参数。检查了Web服务器的error.log?你确定app/logs文件没有包含有用的内容吗?对我来说,这是数据库错误,在运行doctor:shcema:update
resolved:)之后,它对我有效。我相信这个问题的目的是就是要找出什么"系统问题"“FOSUserBundle的背后是避免登录过程,我只是告诉大家我在部署中的经历,我在部署中遇到了同样的问题,以及解决问题的方法。很抱歉没有帮上忙,谢谢。由于数据库中没有完整的用户架构,它正在抛出消息。非常感谢。这花费了我太多的时间。我在哪里运行这些命令?我也有同样的问题。但是我找不到任何解决办法来清除我的电子商务上的缓存文件。@TheGreenFoxx打开你的终端;导航到Symfony的项目目录,然后是app
子文件夹。在这里可以找到控制台文件(实际上它是一个没有扩展名的php文件)。在终端上键入php控制台缓存:clear
,这将清除“dev”环境中的缓存(如果正在生产,请运行php控制台缓存:clear--env=prod
)。
//src/SomeBundle/Model/user.php
<?php
/**
*
* @Assert\File(
* maxSize='512k',
* mimeTypes={'image/png', 'image/jpeg', 'image/gif'},
* mimeTypesMessage= 'Please upload a valid png, gif or jpeg file below 512Kb'
* )
*/
private $profilePic;
?>
<?php
/**
*
* @Assert\File(
* maxSize="512k",
* mimeTypes={"image/png", "image/jpeg", "image/gif"},
* mimeTypesMessage= "Please upload a valid png, gif or jpeg file below 512Kb"
* )
*/
private $profilePic;
?>