我正在努力解决这个问题:
InvalidArgumentException: The URI '' is invalid.
You must use a valid URI scheme. in Drupal\Core\Url::fromUri()
(line 284 of core/lib/Drupal/Core/Url.php).
我怎样才能解决这个问题?
你将一个空白的uri
传递给方法。它抱怨错过一个计划(例如http://
或https://
,或内部计划,例如:internal:/
)
因此要么显式传递空白,要么没有正确设置。但是,它似乎不是空的。
从fromUri() function的源代码看起来,当PHP parse_url函数返回一个空方案时,它似乎会抛出该错误:
... elseif (empty($uri_parts['scheme'])) { throw new \InvalidArgumentException("The URI '$uri' is invalid. You must use a valid URI scheme."); ...
从我在你的问题中收集到的内容中,你似乎为fromUri方法提供了一个空/空值,这反过来导致脚本在尝试解析值时出错。所以我想你在将它传递给fromUri函数之前需要做一些检查。
在fromUri页面的评论部分中有用地提供了如何使用此方法的示例:https://api.drupal.org/comment/61905#comment-61905
我在Drupal 8网站上遇到了类似的问题,请确保您的文件目录路径设置正确
我的案例文件路径是私有的,它没有在settings.php中配置。
$settings['file_private_path'] = 'sites/default/files/private';