Symfony3 服务器返回“500 内部服务器错误”
Symfony3 The server returned a "500 Internal Server Error"
我想把我的 symfony3 代码放到主机上,毕竟我得到了
Oops! An Error Occurred
The server returned a "500 Internal Server Error".
Something is broken. Please let us know what you were doing when this
error occurred. We will fix it as soon as possible. Sorry for any
inconvenience caused.
我的parameters.yml
# 这个文件是在 composer 安装过程中自动生成的
参数:
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: Matched route "{route}".
{"route":"authentication_register","route_parameters":{"_controller":"AppBundle\Controller\DefaultController::indexAction","_route":"authentication_register"},"request_uri":"http://lukmil.stud.if.ktu.lt/register","method":"GET"}
[] [2016-10-11 18:18:40] security.INFO: Populated the TokenStorage
with an anonymous Token. [] [] [2016-10-11 18:18:40] request.CRITICAL:
Uncaught PHP Exception Doctrine\DBAL\Exception\ConnectionException:
"An exception occured in driver: SQLSTATE[28000] [1045] Access denied
for user 'root'@'stud.if.ktu.lt' (using password: NO)" at
/home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php
line 103 {"exception":"[object]
(Doctrine\DBAL\Exception\ConnectionException(code: 0): An exception
occured in driver: SQLSTATE[28000] [1045] Access denied for user
'root'@'stud.if.ktu.lt' (using password: NO) at
/home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:103,
Doctrine\DBAL\Driver\PDOException(code: 1045): SQLSTATE[28000]
[1045] Access denied for user 'root'@'stud.if.ktu.lt' (using password:
NO) at
/home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:47,
PDOException(code: 1045): SQLSTATE[28000] [1045] Access denied for
user 'root'@'stud.if.ktu.lt' (using password: NO) at
/home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:43)"}
[]
我能做什么?
在本地主机上它有效..只是在托管中没有
确保您的服务器数据库凭据已正确添加到您的配置文件 (.yml) 中,并且您的数据库用户有权访问您尝试访问的数据库。
最好的做法是创建一个只能访问相应数据库的用户,因为不应直接使用 root。
您正在使用没有密码的 root。请不要。
勾选这个Access denied for user 'root@localhost' (using password:NO)
并创建访问数据库的用户,尽量不要使用root用户。
去掉密码中的"
参数应该是这样的:
database_port: null
database_name: lukmil
database_user: lukmil
database_password: MyPassword
好的,我找到了一个修复程序。我下载了 putty 程序然后登录并使用 php bin/console cache:clear --env=prod
清除缓存后我的问题就解决了:)
检查两次环境很重要。
例如,在我的例子中,我的代码在开发中是完美的:
app_dev.php/web/login
但在生产中:
/web/login
我有这个错误:“500 内部服务器错误”
然后我查看了生产日志,发现错误。
也许对你也有帮助。
此致
$kernel = new AppKernel('prod', true);
在路径 /web/app.php
.
我想把我的 symfony3 代码放到主机上,毕竟我得到了
Oops! An Error Occurred
The server returned a "500 Internal Server Error".
Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.
我的parameters.yml
# 这个文件是在 composer 安装过程中自动生成的
参数:
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: Matched route "{route}". {"route":"authentication_register","route_parameters":{"_controller":"AppBundle\Controller\DefaultController::indexAction","_route":"authentication_register"},"request_uri":"http://lukmil.stud.if.ktu.lt/register","method":"GET"} [] [2016-10-11 18:18:40] security.INFO: Populated the TokenStorage with an anonymous Token. [] [] [2016-10-11 18:18:40] request.CRITICAL: Uncaught PHP Exception Doctrine\DBAL\Exception\ConnectionException: "An exception occured in driver: SQLSTATE[28000] [1045] Access denied for user 'root'@'stud.if.ktu.lt' (using password: NO)" at /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php line 103 {"exception":"[object] (Doctrine\DBAL\Exception\ConnectionException(code: 0): An exception occured in driver: SQLSTATE[28000] [1045] Access denied for user 'root'@'stud.if.ktu.lt' (using password: NO) at /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:103, Doctrine\DBAL\Driver\PDOException(code: 1045): SQLSTATE[28000] [1045] Access denied for user 'root'@'stud.if.ktu.lt' (using password: NO) at /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:47, PDOException(code: 1045): SQLSTATE[28000] [1045] Access denied for user 'root'@'stud.if.ktu.lt' (using password: NO) at /home/lukmil/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:43)"} []
我能做什么? 在本地主机上它有效..只是在托管中没有
确保您的服务器数据库凭据已正确添加到您的配置文件 (.yml) 中,并且您的数据库用户有权访问您尝试访问的数据库。
最好的做法是创建一个只能访问相应数据库的用户,因为不应直接使用 root。
您正在使用没有密码的 root。请不要。
勾选这个Access denied for user 'root@localhost' (using password:NO)
并创建访问数据库的用户,尽量不要使用root用户。
去掉密码中的"
参数应该是这样的:
database_port: null
database_name: lukmil
database_user: lukmil
database_password: MyPassword
好的,我找到了一个修复程序。我下载了 putty 程序然后登录并使用 php bin/console cache:clear --env=prod 清除缓存后我的问题就解决了:)
检查两次环境很重要。 例如,在我的例子中,我的代码在开发中是完美的: app_dev.php/web/login
但在生产中: /web/login
我有这个错误:“500 内部服务器错误”
然后我查看了生产日志,发现错误。
也许对你也有帮助。
此致
$kernel = new AppKernel('prod', true);
在路径 /web/app.php
.