【问题标题】:Symfony3 The server returned a "500 Internal Server Error"Symfony3 服务器返回“500 Internal Server Error”
【发布时间】:2017-02-20 09:56:23
【问题描述】:

我想把我的 symfony3 代码托管,毕竟我得到了

哎呀!发生错误

服务器返回“500 内部服务器错误”。

有些东西坏了。请让我们知道您在此期间在做什么 错误发生。我们会尽快修复它。对不起任何 造成的不便。

我的参数.yml

# 这个文件是 composer install 时自动生成的

参数:

database_host: db.if.ktu.lt
database_port: null
database_name: lukmil
database_user: lukmil
database_password: "MyPassword"
mailer_transport: smtp
mailer_host:       127.0.0.1
mailer_user:       ~
mailer_password:   ~
secret: ThisTokenIsNotSoSecretChangeIt

这就是我从产品日志中得到的

[2016-10-11 18:18:40] request.INFO:匹配路由“{route}”。 {"route":"authentication_register","route_parameters":{"_controller":"AppBundle\Controller\DefaultController::indexAction","_route":"authentication_register"},"request_uri":"http://lukmil.stud.if.ktu.lt/register","method “:“得到”} [] [2016-10-11 18:18:40] security.INFO:填充了 TokenStorage 带有匿名令牌。 [] [] [2016-10-11 18:18:40] 请求。关键: 未捕获的 PHP 异常 Doctrine\DBAL\Exception\ConnectionException: “驱动程序中发生异常:SQLSTATE [28000] [1045] 访问被拒绝 对于用户'root'@'stud.if.ktu.lt'(使用密码:NO)”在 /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php 第 103 行 {“异常”:“[对象] (Doctrine\DBAL\Exception\ConnectionException(代码:0):异常 发生在驱动程序中:SQLSTATE [28000] [1045] 用户访问被拒绝 'root'@'stud.if.ktu.lt'(使用密码:NO)在 /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:103, Doctrine\DBAL\Driver\PDOException(代码:1045):SQLSTATE[28000] [1045] 用户 'root'@'stud.if.ktu.lt' 的访问被拒绝(使用密码: 否)在 /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:47, PDOException(代码:1045):SQLSTATE [28000] [1045] 拒绝访问 用户'root'@'stud.if.ktu.lt'(使用密码:NO) /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:43)"} []

我能做什么? 在本地主机上它工作..只是在托管不

【问题讨论】:

  • 永远不要共享密码。我编辑了两次隐藏密码

标签: php doctrine-orm symfony-3.1


【解决方案1】:

好的,我找到了解决办法。我下载了 putty 程序,然后登录并使用 php bin/console cache:clear --env=prod 清除缓存我的问题解决了:)

【讨论】:

  • 你拯救了我的一天
【解决方案2】:
$kernel = new AppKernel('prod', true);

在路径/web/app.php

【讨论】:

    【解决方案3】:

    确保您的服务器的数据库凭据已正确添加到您的配置文件 (.yml) 中,并且您的数据库用户有权访问您尝试访问的数据库。

    最好的做法是创建一个只能访问相应数据库的用户,因为不应直接使用 root。

    【讨论】:

    • 这是一所大学托管.. 所以我只有一个用户.. 在 symfony 之前我可以正常访问数据库
    【解决方案4】:

    您正在使用没有密码的 root。请不要。

    查看Access denied for user 'root@localhost' (using password:NO)

    并创建用户访问数据库,尽量不要使用root用户。

    去掉密码中的"

    参数应该是这样的:

    database_port: null
    database_name: lukmil
    database_user: lukmil
    database_password: MyPassword
    

    【讨论】:

    • 好的,有 mysql -u root password '123' 但是我应该在 mysql 哪里执行这些命令?
    • @lukmil 从密码字符串中删除“”。 Symfony 正在读取整个字符串,包括 "
    【解决方案5】:

    重要的是检查两次环境。 例如,在我的情况下,我的代码在开发中是完美的: app_dev.php/web/login

    但在生产中: /web/登录

    我有这个错误:“500 内部服务器错误”

    然后我查看了生产日志,发现错误。

    也许对你也有帮助。

    问候

    【讨论】:

      猜你喜欢
      • 2011-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-11
      • 2015-09-15
      • 2023-03-30
      相关资源
      最近更新 更多