通过使用以下命令,我成功地安装了laravel 5:
composer create-project laravel/laravel test-laravel-5-project dev-develop --prefer-dist我甚至使用php artisan -V命令验证了已安装的laravel的版本。输出是
Laravel Framework version 5.0-dev然后我转到app/config/database.php,将dafault db作为mysql,并给出配置为
'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'), 'database' => env('DB_DATABASE', 'Logintestfive'), 'username'=> env('DB_USERNAME', 'root'), 'password'=> env('DB_PASSWORD', 'manasa'), 'charset'=> 'utf-8', 'collation'=> 'utf-8_unicode_ci', prefix=> '', 'strict'=> false, ]然后我去了localhost:8000/auth/register,填写了表格并提交了数据,这就是我得到的错误:
PDOException in Connector.php line 47: SQLSTATE[28000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)但我既没有使用laravel homestead在我的系统中安装laravel 5,也没有使用vagrant来设置laravel家园。它像这样告诉我:
in Connector.php line 47
at PDO->__construct('mysql:host=localhost;dbname=homestead', 'homestead', 'secret', array('0', '2', '0', false, '0')) in Connector.php line 47
at Connector->createConnection('mysql:host=localhost;dbname=homestead', array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql'), array('0', '2', '0', false, '0')) in MySqlConnector.php line 20
at MySqlConnector->connect(array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql')) in compiled.php line 10545
at ConnectionFactory->createSingleConnection(array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, 'name' => 'mysql')) in compiled.php line 10541
at ConnectionFactory->make(array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'homestead', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false), 'mysql') in compiled.php line 10459我怎样才能解决这些问题?
发布于 2015-02-11 13:20:03
我也遇到了类似的问题。我使用php artisan serve命令启动了服务器,并编辑了.env文件,并刷新了不反映任何更改的网页!
我通过停止and服务器、编辑.env.php文件并重新启动and服务器来修复它!
所以我想这是.env.php文件的缓存问题。
发布于 2015-08-18 08:41:55
Laravel 5.1.10
以上由Ganesh和Yordi给出的答案,但我将两者合并为一个。
发布:
当我试图在phpmyAdmin中创建数据库并希望通过服务创建模式/表时,我得到了以下错误:
PDOException在Connector.php第50行:拒绝用户“住宅”@“localhost”的SQLSTATEHY000访问(使用密码: YES) 在Connector.php第50行 在PDO->__construct('mysql:host=localhost;dbname=homestead',的“宅基地”,“秘密”,数组( '0','2',‘0’,false,'0')) 在Connector.php第50行 在Connector->createConnection('mysql:host=localhost;“dbname=住宅”、数组(“驱动程序”=>‘mysql“、”主机’=>‘localhost“、’数据库‘=> 'name’、‘用户名’=>‘name’、‘密码’=>‘秘’、‘字符集’=>‘utf8 8’、‘=>’utf8 8_unicode_ci‘、’前缀‘=>’、‘严格’=>假、‘名称’=> 'mysql')、数组( '0‘、'2’、‘0’、‘false’、)在MySqlConnector-> MySqlConnector.php第22行中的“0”(数组(“驱动程序”=>‘mysql“、”主机’=>‘localhost“、’数据库‘=> 'name’、‘用户名’=>‘name’、‘密码’=>‘、'charset’=>‘utf8 8’、‘=>’utf8 8_unicode_ci‘、’前缀‘=>’、‘=> false’、‘=> 'mysql’).
解决方案1:
然后我意识到问题在env文件中,我忘记了更改env文件中的值。.env文件位于laravel 5根目录中,打开该文件并使用您的值更改以下值
DB_DATABASE = localhost
DB_USERNAME =数据库-用户名,
DB_PASSWORD =数据库-用户密码
解决方案2:
或者将database.php文件中的env()更改为Ganesh syas:
// instead of this block
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'your database name'),
'username' => env('DB_USERNAME', 'your database username'),
'password' => env('DB_PASSWORD', 'your database password'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
// use this one
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'your database name',
'username' => 'your database username',
'password' => 'your database password',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
]这两种解决方案都对我有效。
发布于 2015-01-29 08:05:41
Laravel正在使用.env文件中包含的变量。
来自:http://laravel.com/docs/master/configuration
根据应用程序正在运行的环境拥有不同的配置值通常是很有帮助的。例如,您可能希望在本地使用与生产服务器上不同的缓存驱动程序。它很容易使用基于环境的配置。
Laravel利用Vance的DotEnv PHP库。在新的Laravel安装中,应用程序的根目录将包含一个.env.example文件。如果您通过Composer安装Laravel,此文件将自动重命名为.env。否则,应手动重命名该文件。
当应用程序收到请求时,该文件中列出的所有变量都将加载到$_ENV PHP超级全局中。您可以使用env助手从这些变量中检索值。事实上,如果您查看Laravel配置文件,您将注意到已经使用此助手的几个选项!
您可以随意修改您自己的本地服务器以及生产环境所需的环境变量。但是,您的.env文件不应该提交到应用程序的源代码管理,因为每个使用应用程序的开发人员/服务器都可能需要不同的环境配置。
如果您正在与一个团队一起开发,您可能希望继续在应用程序中包括一个.env.example文件。通过在示例配置文件中放置place值,您团队中的其他开发人员可以清楚地看到运行应用程序所需的环境变量。
默认的.env文件如下所示:
APP_ENV=local
APP_DEBUG=true
APP_KEY=YOUR_KEY_HERE
DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
CACHE_DRIVER=file
SESSION_DRIVER=filehttps://stackoverflow.com/questions/28209536
复制相似问题