5
3

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 3 years have passed since last update.

PHPで /tmp のファイルが見つからない

Last updated at Posted at 2021-11-08

PHPでデプロイ時にも削除されないように /tmp にキャッシュファイルを作成したが、ファイルが存在するのにfile_exists()false になったり、PHPからプロセス起動しての ls コマンド実行でも "No such file or directory" になり、ドハマリした。
ファイルの存在はもちろんファイル権限や状態など確認しまくっても、既存のファイルとPHP内で取得してきたファイルに全く違いがない。謎すぎた。

PHPのプロセスごとにバーチャル /tmp が使用されているのが原因だった。。。

知っていればなんてこと無かったことだが、数時間を無駄にしてしまった。

追記:
そもそも、/tmpではなく、キャッシュならば/var/cacheを使用すべきか。
Linuxディストリビューションによっても異なるが、例えばCentOS7では/tmpの内容はシステム再起動時や一定期間後に削除されるので、一時的な作業中・処理中にしか使用しないものをちょっと置いておくだけの場所としてのみ使うべきということか。

5
3
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
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?