在 PHP 中是否有任何其他类型的获取远程数据,除了:"cURL"
并且"allow_url_fopen"
在php.ini中设置为,"On"
以便能够使用或流式传输远程内容?"fopen"
"fsockopen"
"file_get_contents"
我正在开发一个自定义 PHP 远程内容流媒体,并且我正在寻找任何其他方式来流式传输远程内容,如果"cURL"
or"allow_url_fopen"
是"Off"
.
在 PHP 中是否有任何其他类型的获取远程数据,除了:"cURL"
并且"allow_url_fopen"
在php.ini中设置为,"On"
以便能够使用或流式传输远程内容?"fopen"
"fsockopen"
"file_get_contents"
我正在开发一个自定义 PHP 远程内容流媒体,并且我正在寻找任何其他方式来流式传输远程内容,如果"cURL"
or"allow_url_fopen"
是"Off"
.
“allow_url_fopen”不影响“fsockopen”。
即使是这样,在网络服务器中启用系统调用也是比“allow_url_fopen=On”更大的安全威胁。
要禁用 fsockopen,可以将其添加到 php.ini 中的“disable_functions”中
运行系统调用呢?喜欢passthru()
或exec()
或system()
并在命令行上调用curl
或wget
并捕获数据
Linux 示例:
ob_start();
passthru("wget -U 'CustomUserAgent' -q -O - 'http://www.example.com/'");
$output = ob_get_clean();
Windows 7+ 示例(通过 powershell)。取自这里
(new-object System.Net.WebClient).DownloadFile('http://www.example.come','C:\tmp\output.txt') –
要扩展 windows 方法,请参阅从 php 执行 Powershell 脚本