Php 错误SQLSTATE[HY000][1045]

Php 错误SQLSTATE[HY000][1045],php,mysql,laravel,cpanel,blogs,Php,Mysql,Laravel,Cpanel,Blogs,我目前正在做一个拉威尔的项目。我在共享服务器上进行了部署,但收到了错误消息 使用密码拒绝用户“root”@“localhost”的SQLSTATE[HY000][1045]访问:否 本地的项目可以正常工作,但在服务器上仅限于出错。我在my.env中配置了环境变量 我认为服务器可能没有读取.env文件,这就是问题产生的原因。通过添加并运行以下路由清除live server上的缓存: Route::get('/clear-cache', function() { $exitCode = Ar

我目前正在做一个拉威尔的项目。我在共享服务器上进行了部署,但收到了错误消息

使用密码拒绝用户“root”@“localhost”的SQLSTATE[HY000][1045]访问:否

本地的项目可以正常工作,但在服务器上仅限于出错。我在my.env中配置了环境变量


我认为服务器可能没有读取.env文件,这就是问题产生的原因。

通过添加并运行以下路由清除live server上的缓存:

Route::get('/clear-cache', function() {
    $exitCode = Artisan::call('cache:clear');
    // return what you want
}); 

您必须将正确的数据库凭据添加到.env文件。。您可以在cPanel中找到数据库凭据

实际上问题出在我的主机上

我最好的选择是开始使用DigitalOcean

但当时我做的是:

创建一个新的数据库。 创建一个新用户。 按照Laravel的指定,在my.env文件中添加新数据。 按照Junaid Ahmad的指定创建一条清除缓存的路由,但要更改某些内容。 路由::获取'/cache',函数{ $clear=Artisan::调用'cache:clear'; 返回已清除的缓存; };

我借此机会感谢那些当时帮助过我的人


如果您正在处理这个问题:请避免不惜一切代价修改database.php文件。这不是一个好的做法。。。并更改DigitalOcean VPS的主机。

首先,您不应该使用root登录sql数据库。数据库应该有自己的具有指定访问权限的帐户,而不是root获得的所有访问权限。这很危险。其次,您的访问被拒绝,这意味着ROOT可能有一个密码,而您没有使用它。@bassxzero谢谢!我创建了一个新数据库并创建了一个新用户。然后,我按照Laravel的指定更改了.env文件中的数据。以前,我将项目加载到Laravel中,但我没有使用数据库。但问题仍然存在。似乎主机无法识别my.env文件中的更改。您永远不应该修改此文件,这是本文件的重点和目的。env@Options哪个文件?database.php文件我根据数据库中的数据更改了.env文件中的数据,我也切换到了生产模式,我还将调试模式更改为false,但仍然显示错误。宿主似乎无法识别my.env文件中的更改