如何允许在没有方案的 URL 上使用 fopen 和 getimagesize,例如 // 而不是 http://

如何允许在没有方案的 URL 上使用 fopen 和 getimagesize,例如 // 而不是 http://

我在站点配置中设置了 open_basedir,但是当使用 getimagesize 时,如果 uri 以 // 而不是 http:// 开头,则会出现错误“open_basedir 限制生效”

如何允许这样做?将 // 添加到 open_basedir 是否存在安全风险?

答案1

您需要自己将方案添加回 URL。任何以 开头的内容/都是从本地文件系统读取的,如果您将其添加到 open_basedir,它将允许读取整个文件系统,这与关闭它几乎相同。

答案2

// 意味着是继承基页方案的“相对”url。我认为这在 PHP 环境中没有意义,因为没有基页可以引用。

相关内容