SQLSTATE[HY000] [2002] Laravel 站点的连接被拒绝

SQLSTATE[HY000] [2002] Connection refused for Laravel site

当我尝试在 000webhost 托管我的 laravel 项目时出现此错误:

SQLSTATE[HY000] [2002] Connection refused (SQL: select * from `berita` where `id_berita` between 10046 and 10047)

这是我的 .env:

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=id12858572_rpl_smkn2
DB_USERNAME=id12858572_rpl_smkn2
DB_PASSWORD=********

这是我第一次遇到这个错误,我已经检查过类似的问题,但它没有帮助我。有什么想法吗?

Picture for DB_NAME and DB_USERNAME

我认为它应该在您的 .env 文件中

  1. 数据库主机是否可以通过端口 3306 访问?
  2. 您可以根据 env 中的凭据使用 mysql cli 登录数据库吗?
  3. mysql 服务状态如何?

还有一个,可能是你的 laravel 缓存,所以你可以考虑清除缓存

我尝试将此代码添加到我的 .htaccess 文件中

在此代码之后:

# HTID:13056320: DO NOT REMOVE OR MODIFY THIS LINE AND THE LINES BELOW
php_value display_errors 1
# DO NOT REMOVE OR MODIFY THIS LINE AND THE LINES ABOVE HTID:13056320:

添加这个:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Send Requests To Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>