EDIT 1Запись в TMP папке
Этот вопрос включает пользователя о MANGOPAY API. Моя проблема в том, что я не могу заставить API писать в папку tmp
.
Мне удалось получить API для записи в http://fakedomain.com/apifolder/blank.txt
и получения соответствующего результата.
Я запустил сценарий http://fake.com/apifolder/demos/iswrite.php
на http://fakedomain.com/apifolder/blank.txt
, чтобы иметь минимальный рабочий код, который я мог бы проверить в папке tmp
. Вот код в скрипте:
<?php
$filename = 'blank.txt';
echo "<br>";
file_exists($filename);
echo "<br>";
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
echo "<br>";
if (is_writable($filename)) {
echo 'The file is writable';
} else {
echo 'The file is not writable';
}
?>
Это дает мне выход
The file blank.txt exists The file is writable
так что все там хорошо. Я создал следующий файл со следующими разрешениями при помощи Filezilla:
В сценарии http://fake.com/apifolder/demos/iswrite.php
я изменил переменное имя файла в $filename = 'http://fake.com/tmp/creative/blank.txt';
. Это дает мне следующий вывод:
The file http://fake.com/tmp/creative/blank.txt does not exist The file is not writable
Кроме того, allow_url_fopen
включен.
Я не совсем понимаю структуры URL, так что, может быть, проблема там? Папка tmp, которую я пытаюсь получить, находится на том же уровне, что и моя папка public_html
. Может быть, я неправильно писал свои URL-адреса?
Put по-другому, не папка tmp
должны быть вне папки public_html
? Будет ли какая-то цель? Или я могу создать свою собственную папку tmp
в пределах public_html
, где она уже работает?
ORIGINAL ВОПРОС
Оригинальный вопрос был плохо написан. См. EDIT 1
Я играю с песочницей API (MangoPay). Я включил свой ClientId и ClientPassword, который, похоже, работает.
В API также говорит ...
Вы также должны установить путь к папке в $ API-> config-> TemporaryFolder что SDK необходим для хранения временных файлов. Этот путь должен находиться за пределами вашей папке www. Это может быть/tmp/or/var/tmp/или любое другое местоположение , на которое PHP может писать.
Я создал один на:
ftp://[email protected]/tmp/fakefoldername
Я бегу сценарий PHP с моего рабочего стола с помощью терминала. Выход он дает мне это
Невозможно создать или записать в файл
ftp://[email protected]/tmp/fakefoldername
даже если я установить права доступа 777.
Любая идея, почему я получаю эту ошибку?
Какая ОС вы используете? –
@ Fred-ii- Я использую Linux с CPanel –
Спасибо. Я добавил соответствующий тег и удалил «http», если все в порядке. Это может помочь вам получить более высокий уровень воздействия и быть связанными с рассматриваемой ОС. –