香港独立IP空间
香港php空间
美国php空间
域名注册

今天无忧主机小编给大家带来的文章,是包括无忧主机php空间的站长朋友都遇到过的。很多站长都会在网站上面做网盘直接链接api调用,使用网盘直连后,地址会成为***.abc.com开头的,这样自然是很不利于网站的运营的,所以很多站长都会想着把这个地址伪造成为自己的域名,这样就不会非常直接的影响到自己的网站运营,现在我们看看如何解决这个问题。

api 上传插件:ok.php文件中有段代码:
$downurl=$_GET[‘url’];
这里是接受到的是返回的完整的地址,那么我们就可以在这里进行修改一下,添加下面的一段代码:
$downurl=str_replace(“http://kupan.chache.chshcms.com/down/”,”http://域名/url/data/”,$downurl);
这样就会将默认的地址修改为了自己的域名地址,这样进行入库就完全没有问题了,不过这个还有一个非常好的好处:当之后更换网盘后,读取的地址接口更改,也能随着改变,这样就不需要再到数据库里面去替换了。
不过当地址改变之后,还是没有完全结束的,我们还得在伪静态文件里面添加一句代码:
RewriteRule ^url/data/(.*)$ url.php?data=$1&%1

最后,在网站根目录创建一个:url.php文件

<?php
header("Location:http://kupan.chache.chshcms.com/down/$_GET[data]");
exit;

或者:

<?php
/**
curl方式 获取远程文件内容
@param $url 文件http地址
*/
function fopen_url($url) {
if (function_exists('file_get_contents')) {
$file_content = @file_get_contents($url);
} elseif (ini_get('allow_url_fopen') && ($file = @fopen($url, 'rb'))){
$i = 0;
while (!feof($file) && $i++ < 1000) {
$file_content .= strtolower(fread($file, 4096));
}
fclose($file);
} elseif (function_exists('curl_init')) {
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $url);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl_handle, CURLOPT_FAILONERROR,1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Trackback Spam Check');
$file_content = curl_exec($curl_handle);
curl_close($curl_handle);
} else {
$file_content = '';
}
return $file_content;
}
$a=fopen_url("http://kupan.chache.chshcms.com/down/$_GET[data]");
echo $a;

按照这个方法基本上能解决掉大部分的相同类是的问题,如果有什么不对的地方还请各位站长指点出来或者能提供更好的解决方法,小编随时欢迎,只希望能帮到各位站长。

无忧主机相关文章推荐阅读:

解决DIYPAG程序首页CSS失效

如何在DIYPAGE中添加GOOGLE广告

PHP中COOKIE与SESSION的主要区别

如何利用.HTACCESS规则解决新建目录访问无效

本文地址:http://www.51php.com/others/19326.html

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读: