我正在尝试在生产主机上发布Laravel 5.8应用程序。我已经上传了文件,并在.env文件中进行了更改。但是仍然在访问我的应用程序时,它会引发错误:
拒绝访问用户'root'@'127.0.0.1'(使用密码:否)
下面是我的.env文件:
offline_access
我还对database.php进行了更改:
DB_CONNECTION=mysql
DB_HOST= ip
DB_PORT=3306
DB_DATABASE=secret
DB_USERNAME='secret'
DB_PASSWORD='secret'
答案 0 :(得分:1)
尝试。
php artisan config:cache
然后
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=secret //enter your right databse name
DB_USERNAME=secret //please check your username
DB_PASSWORD=secret //please check your password
或
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=secret //enter your right databse name
DB_USERNAME=root //please check your username
DB_PASSWORD=enter your correct password //please check your password
更改您的databse.php
'users' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env(‘DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSNORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => false,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO: :I'IYSQL_ATTR_SSL_CA => env( 'MYSQL_ATTR_SS L_CA' ),
]) : [],
},
答案 1 :(得分:0)
作为评论建议,使用localhost
而不是127.0.0.1
,但是,我也遇到了同样的错误,问题出在Laravel项目缓存中:只需使用php artisan config:cache
重新缓存文件,或者只是删除bootstrap / cache文件夹中的所有文件