繁体   English   中英

如何通过非标准端口使用php fopen()?

[英]How to use php fopen() with a non-standard port?

我需要我的网站能够使用fopen()访问文件流服务器上的文件,该文件流服务器已由我们的管理员配置为使用端口8000。但是它出错了,我相信是因为端口号。 我也在php.ini中启用了allow_url_fopen ,所以我不认为这是问题所在。

Warning: fopen(http://129.237.213.244:8000/mp3/First_8864.mp3) [function.fopen]: 
failed to open stream: Connection refused in _npp_get_mp3() (line 23 of 
/home2/ab83417/public_html/drupal/sites/all/modules/npr_player_pack/npp_library.php).

所以我的问题是:我可以以某种方式告诉Web服务器或我们的流服务器(icecast,btw)停止如此挑剔,还是应该使用其他其他php函数(例如curl)?

您应该确保将allow_url_fopen设置为1

启动以下脚本:

<?php
error_reporting(E_ALL);
ini_set('display_errors','1');

echo ini_get('allow_url_fopen')."<br />";
$x = file_get_contents('http://129.237.213.244:8000/mp3/First_8864.mp3');

$y = fopen('http://129.237.213.244:8000/mp3/First_8864.mp3',"rb");

它给我简单的1 ,没有警告。 如果您也得到1但有警告,则应在其他浏览器中运行该脚本并更早更改IP(例如vpn)。 该站点可能已禁止您的IP,因此您无法连接到该站点/ URL。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM