我正在使用Laravel 5,当我运行php artisan route:list
时,它总是给我一个错误 SQLSTATE [HY000] [1045]拒绝访问用户'宅基地&#39 ; @'本地主机' (使用密码:是)。这不应该是因为我的应用程序将不会连接到任何数据库,因为它将是一个静态网站。
我尝试删除.env文件中的变量:
DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
还是给我错误。它似乎仍然连接到数据库,它不应该建立任何数据库连接。
答案 0 :(得分:2)
当我将Laravel安装程序从v1.1升级到v1.2时,我遇到了同样的问题。
默认情况下,routes.php文件似乎是添加了身份验证路由:
Route::controllers([
'auth' => 'Auth\AuthController',
'password' => 'Auth\PasswordController',
]);
这会导致显示您所描述内容的错误消息:
$ php artisan route:list
[PDOException]
SQLSTATE[28000] [1045] Access denied for user 'forge'@'localhost' (using password: NO)
我通过执行以下命令删除Laravel中包含的脚手架来解决这个问题:
$ php artisan fresh
或者只是删除文件本身内的Auth路线。
您现在应该可以运行:php artisan route:list
希望这有帮助!
答案 1 :(得分:0)
这可能是localhost的问题。如果您正在使用其中任何一个,请检查您的WAMP,MAMP,LAMP和XAMP MySql服务器。
答案 2 :(得分:0)
这解决了我的问题:
看起来工匠可能在错误的环境中工作。运行“php artisan tinker
”,然后“App::environment();
”以查看Artisan正在运行的环境。如果它不是生产环境,则需要在app / config文件夹中创建一个包含该环境名称的文件夹,并在其中放入“database.php”文件的副本。
之后,如果您没有执行任何与DB相关的任务,则不会访问DB。
我找到了答案here
或者,您可以运行以下命令来解决此问题:
php artisan migrate:install --env="local"
执行此操作后,您将命令:
php artisan route:list
享受。