Предупреждение об отказе в разрешении с помощью function.file-put-contents - PullRequest
0 голосов
/ 21 декабря 2011

Я использую этот код для загрузки файла динамического изображения, который уже находится на моем сервере

$url = 'example.com/test/image.php';
$img = 'cert.png';
file_put_contents($img,'file_get_contents($url));

allow_url_fopen уже включен на сервере.но я все еще получаю следующую ошибку

Warning: file_put_contents(cert.png) [function.file-put-contents]: failed 
to open stream: Permission denied in D:/... on line 42

Я видел ту же ошибку на другом сайте http://www.rsi -relief.com / rsi-links / ergonomics-information / ergoweb /

Я новичок в PHP, поэтому я немного запутался здесь.Просьба помочь

Ответы [ 2 ]

1 голос
/ 13 мая 2014

Вместо командной строки я предлагаю вам попробовать с filezilla или каким-либо FTP-клиентом, щелкните правой кнопкой мыши на каталоге и выберите права доступа к файлу. затем отметьте галочкой соответствующее разрешение и нажмите ОК. Это должно работать

1 голос
/ 21 декабря 2011

Это не имеет ничего общего с неправильным php-кодом, я полагаю, но с правами доступа к файловой системе на вашем сервере / хосте. Если у вас есть доступ через SSH или FTP, вы можете попробовать изменить настройки cmod вашей папки / файла.

Обновление

Ваш код неверный, попробуйте это

// this is the path where you need write access on your server
$imgDestinationPath = '/you/need/a/physical/serverpath/here/cert.png';
$url = 'http://example.com/test/image.php';
$content = file_get_contents($url);
file_put_contents($imgDestinationPath, $content);
...