Невозможно выполнить запись в /tmp с помощью php, несмотря на права доступа 777 и отсутствие значения open_basedir

Я пытаюсь записать файл в свой каталог /tmp (на сервере apache) с помощью функции php fopen, но это не удается:

<?php
$handle = fopen("/tmp/test.txt", "x");
if ($handle) 
   echo "Success!";
else 
    print_r(error_get_last());

Это возвращает сообщение об ошибке:

не удалось открытый поток: нет такого файла или каталога.

Для каталога /tmpустановлены разрешения drwxrwxrwt, и я вижу, что веб-пользователь записывает в него другие файлы. Таинственным образом, если я укажу скрипту другую папку с разрешениями 777, он вернет успех. Но мой open_basedirне имеет значения. У меня есть safe_mode=onи allow_url_fopen=off, но я не думаю, что это должно объяснять это?

Это PHP 5.3.10 на Apache Httpd 2.0.

22
задан Eddie C. 18 July 2019 в 19:12
поделиться