为什么CURLOPT_FOLLOWLOCATION与open_basedir不兼容?

时间:2014-09-12 16:10:13

标签: php security curl

当服务器管理员设置open_basedir时,PHP的cURL库不允许跟踪HTTP重定向。 这就产生了一些关于SO的问题,例如curl follow location error有很多重复,大多数答案要么“切换到允许关闭open_basedir”的托管服务提供商,要么尝试abstraction inversions在PHP中重新实现cURL的HTTP重定向逻辑。

我只是想知道为什么PHP开发人员首先选择让它们互相排斥。 当服务器管理员设置open_basedir服务时,PHP的拒绝遵循从一个HTTP或HTTPS URI重定向到另一个HTTP或HTTPS URI的策略有什么安全性?

1 个答案:

答案 0 :(得分:4)

最初实施它是因为libcurl没有忽略Location: file://重定向。由于curl也允许本地文件访问,因此会破坏基础约束。

这个设计"不兼容"在最近的版本中放松了,顺便说一下: