首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP url执行

PHP url执行
EN

Stack Overflow用户
提问于 2015-01-27 09:28:31
回答 1查看 255关注 0票数 0

我想更新icecast服务器元数据信息,如果我像这样手动输入到浏览器中,一切都很好:

代码语言:javascript
复制
http://IPADDRESS:PORT/admin/metadata?mount=/live&mode=updinfo&song=ARTIST+SONG+NAME

我得到的XML响应是,元数据更新成功,如果我检查直播流,它真的是成功的(甚至iTunes弹出歌曲信息)。

问题是,我做了一个php脚本,应该使用cURL来执行相同的网址,但我尝试了许多方法和解决方案,但没有一个有效。有谁可以帮我?如何在php脚本中执行此URL?

谢谢!

这是我的php中的代码,它应该执行URL来更新元数据,但它不起作用:

代码语言:javascript
复制
    $url = "http://IPADDRESS:PORT/admin/metadata?mount=/live&mode=updinfo&song=".urlencode($params)."";
file_put_contents($file2, $url);
$agent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
var_dump($result);

如果我复制它并在浏览器中手动输入它,元数据会改变,但通过php脚本自动不会改变。我也尝试了http身份验证icecast,但不会工作,当我手动输入URL时,我不需要验证更改元数据。

我真的不知道还能做什么。

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2015-01-27 09:36:28

你的脚本没有权限更改你的Icecast电台的元数据,因为它不有任何用户名和密码。您可以使URL查询在您的浏览器中工作,因为您之前只需提供用户名和密码。您可以使用CURLOPT_USERPWD发送用户名和密码

代码语言:javascript
复制
curl_setopt($ch, CURLOPT_USERPWD, $username.":".$password);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28161756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档