在azure网站上存储文件但不能打开php

时间:2016-08-01 04:56:13

标签: php azure azure-web-sites

尝试将图片上传到根目录,以便从网址访问它。

    $url = "http://my.com/myimage.jpg";
    $dir = $_SERVER['DOCUMENT_ROOT'] . "/";
    var_dump($dir);
    $ch = curl_init($url);
    $fp = fopen($dir ."". basename($url), 'wb');
    curl_setopt($ch, CURLOPT_FILE, $fp);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_exec($ch);
    curl_close($ch);
    fclose($fp);

当我想在azure网站上访问它时,它会显示一个空白页面。 没有显示错误

2 个答案:

答案 0 :(得分:1)

由于Azure Web Apps基于Windows VM,因此文件系统分隔符为\

请考虑以下代码段:

header("Content-Type: image/jpeg");
$url = "http://my.com/myimage.jpg";
$dir = $_SERVER['DOCUMENT_ROOT'] . "\\";
echo file_get_contents($dir . basename($url));

答案 1 :(得分:0)

您的脚本已正确编写。我已经尝试并且工作正常,但您需要设置图像标题

header("Content-Type: image/jpeg");
$url = 'http://my.com/myimage.jpg';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result= curl_exec($ch);
curl_close($ch) ;
echo $result;