Lumen 下使用 dingo,生成路由时地址端口莫名其妙增加了一个 0,另外一个项目正常
**如题,使用dingo的生成路由函数在控制器里生成的路由地址是正确的,eg:http://tets.com/api/auth/login
函数如下:
app('Dingo\Api\Routing\UrlGenerator')->version($verison)->route($name);
在console下写了一个缓存路由列表的command,通过artisan调用的时候路由端口变成0,
eg:http://tets.com:0/api/auth/login
追代码定位到
/home/an/sites/cjksrv/vendor/illuminate/routing/RouteUrlGenerator.php 164行
往下追到
/home/an/sites/cjksrv/vendor/symfony/http-foundation/Request.php 906行
发现拿不到host,进入907行的if条件,返回了一个空
尝试对比并修改配置文件,但是问题依然存在,最后暂时先修改了上述文件的907行,强行返回一个80!
修改之后artisan命令调用该命令生成的路由恢复正常。
但是这只能算是绕过去了,问题的根本并没有解决,希望知晓问题根源的各位大佬和小伙伴指点一下!
怎么说呢,最终是解决了
正常的那个项目lumen是5.7的,出问题的那个项目是5.6的,升级了一下版本就好了
但是具体是哪个节点导致的还没找到