0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

2022-07-11 apache から file_put_contents で /tmp に書き込んだファイルが見当たらない

Last updated at Posted at 2022-07-17

発生した問題

パーミッションは 777 なのに、 /tmp 以下に書き込んだファイルが見当たらない。

file_put_contents() の返り値は false でなく数値であり、エラーは発生していないように見える。

解決方法

結果として、 systemd-private 以下のディレクトリに保存されていた。

[vagrant@localhost ~]$ ls -l /tmp/
total 160
drwxrwxrwx. 3 root    root        17 Jul  8 01:25 systemd-private-2b77b18c2f424fe7afeecfea34d56ab2-chrony
d.service-iIjYVL
drwxrwxrwx. 3 root    root        17 Jul  8 01:32 systemd-private-2b77b18c2f424fe7afeecfea34d56ab2-httpd.
service-ZR83lg
drwx------  3 root    root        17 Jul 11 05:12 systemd-private-646261b943474726b11dec82b8a10c44-chrony
d.service-10BqpD
drwx------  3 root    root        17 Jul 11 05:12 systemd-private-646261b943474726b11dec82b8a10c44-httpd.
service-j3gQ6f
-rwxrwxrwx. 1 vagrant vagrant    112 Jul  8 01:27 vagrant-shell
-rwxrwxrwx. 1 root    root    156589 Jul  8 01:33 x-mon_install_log.txt
[vagrant@localhost ~]$ ls -ld /tmp/
drwxrwxrwt. 11 root root 4096 Jul 11 06:08 /tmp/
[vagrant@localhost ~]$ sudo ls -l /tmp/systemd-private-2b77b18c2f424fe7afeecfea34d56ab2-httpd.service-ZR8
3lg/tmp/
total 8
-rwxrwxrwx. 1 apache apache 1037 Jul  8 09:05 output2.json
-rwxrwxrwx. 1 apache apache 1006 Jul  8 09:05 output.json

作成した output.json は phpunit からコマンドライン経由で呼び出して利用したかったのだが、 /tmp/output.json のパスではアクセスできなかった。

/opt/ 等に適当なディレクトリを作り、そちらに保存することによって解決した。

解説

php - Why can't write info into /tmp directory instead of /var/www/html? - Stack Overflow

systemd が、apache プロセスが利用する用にディレクトリを作成してくれているらしい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?