No tengo open_basedir, php puede acceder a / etc / usr / proc / home, etc ... pero no / tmp.
tmpfs es mount on / tmp (/ tmp type tmpfs (rw)) Esa es también la razón por la que quiero usar la carpeta / tmp.
Mis archivos son propiedad de http (usuario para nginx y php) y todos pueden leerlos.
sudo -u http cat /tmp/file
funciona pero no funciona nada dentro de un script php (como file_exist () o file ()).
editar: el error se muestra en el registro:
PHP Warning: file(/tmp/ydlw/pid): failed to open stream: No such file or directory in /srv/http/ydlw/status.php on line 267
edit2: probé el problema de otra manera. hice
touch("/tmp/boo");
file_exist("/tmp/boo");
y file_exist devuelve true para que se cree el archivo. Luego vi dentro / tmp y no se puede encontrar ningún archivo "boo" allí. Eso es lo que tenía miedo, php no «ve» el punto de montaje. ¿Por qué es eso y cómo puedo solucionarlo?
/tmp/ydlw/pid
en /tmp
? Si no, entonces esa es la razón del mensaje de error.