Php 无法分析MongoDB URI:';mongodb://';。URI中的主机字符串无效
在尝试使用laravel运行MongoDB 4.0时,我遇到以下错误 PHP致命错误:未捕获MongoDB\Driver\Exception\InvalidArgumentException: 无法分析MongoDB URI:“MongoDB://”。URI中的主机字符串无效。在/var/www/html/valueableapp/valueable_rest_app/api_src/vendor/mongodb/mongodb/src/Client.php:87中` 我使用命令Php 无法分析MongoDB URI:';mongodb://';。URI中的主机字符串无效,php,laravel,mongodb,laravel-5.5,Php,Laravel,Mongodb,Laravel 5.5,在尝试使用laravel运行MongoDB 4.0时,我遇到以下错误 PHP致命错误:未捕获MongoDB\Driver\Exception\InvalidArgumentException: 无法分析MongoDB URI:“MongoDB://”。URI中的主机字符串无效。在/var/www/html/valueableapp/valueable_rest_app/api_src/vendor/mongodb/mongodb/src/Client.php:87中` 我使用命令mongo来运行
mongo
来运行mongoshell,它工作正常。
还有sudo服务mongod状态
,它还显示运行状态。
我不能开始我的项目,甚至任何人请。下面是我得到的问题的完整堆栈跟踪
php artisan服务--端口=8080
Laravel开发服务器已启动:
[Wed May 22 10:00:54 2019]PHP致命错误:未捕获MongoDB\Driver\Exception\InvalidArgumentException:未能解析MongoDB URI:'MongoDB://'。URI中的主机字符串无效。在/var/www/html/valueable-app/valueable\u-rest\u-app/api\u-src/vendor/mongodb/mongodb/src/Client.php:87中
堆栈跟踪:
#0/var/www/html/valueable app/valueable_rest_app/api_src/vendor/mongodb/mongodb/src/Client.php(87):mongodb\Driver\Manager->\uu构造('mongodb://',Array,Array)
#1/var/www/html/valueable app/valueable_rest_app/api_src/vendor/jensegers/mongodb/src/jensegers/mongodb/Connection.php(141):mongodb\Client->_构造('mongodb://',Array,Array)
#2/var/www/html/valueable app/valueable_rest_app/api_src/vendor/jensegers/mongodb/src/jensegers/mongodb/Connection.php(41):jensegers\mongodb\Connection->createConnection('mongodb://',Array,Array)
#3/var/www/html/valueable app/valueable_rest_app/api_src/vendor/jensegers/mongodb/src/jensegers/mongodb/MongodbServiceProvider.php(30):jensegers\mongodb\Connection->\uu构造(数组)
#4[内部函数]:第87行/var/www/html/valueable app/valueable_rest_app/api_src/vendor/mongodb/mongodb/src/Client.php中的Jenssers\Mongo
Config/database.php
<?php
return [
'fetch' => PDO::FETCH_CLASS,
'default'=>'mongodb',
'connections' => array(
'mongodb' => array(
'driver' => 'mongodb',
'host' => env('DB_HOST'),
'port' => env('DB_PORT'),
'username' => env('DB_USERNAME'),
'password' => env('DB_PASSWORD'),
'database' => env('DB_DATABASE'),
'options' => [
'database' => env('DB_DATABASE')
]
),
),
'migrations' => 'migrations',
'redis' => [
'cluster' => false,
'default' => [
'host' => env('REDIS_HOST', 'localhost'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => 0,
],
],
];
提前谢谢。我已在该网站上寻找解决方案但是这个问题没有答案。在我的例子中,我只是解决了它,但将文件名从
.env
更改为.env.local
。
谢谢。由于端口号错误,我出现了这个错误。请首先确认如果不查看您的配置文件(如
config/database.php
或.env
的相关部分),很难为您提供帮助。你能发布它们并编辑你的问题吗?我补充说,你可能会有相同的错误,可以通过多种方式产生。如果它找不到“查找管理器”,那么它很可能会落在端口或路径上
APP_ENV=local
APP_DEBUG=true
APP_KEY=base64:q0DOPnhqUzhmMrqryyyN6SDOi6NHKh/BbmJGHw35e3E=
DB_CONNECTION=mongodb
DB_HOST=localhost
DB_PORT=27017
DB_DATABASE=abc
DB_USERNAME=
DB_PASSWORD=
CACHE_DRIVER=array
SESSION_DRIVER=file
QUEUE_DRIVER=sync
CRITERIA_MAX_SCORE=5
CRITERIA_MIN_SCORE=1
MAX_SCORE_APP=1000