読者です 読者をやめる 読者になる 読者になる

【Ruby】sessionのtmpdirのおはなし

Rubyでcgiにするときに、sessionで、tmpdirというのがあります。
昨日のエントリなどで、

session = CGI::Session.new(cgi,{"new_session"=>true,"tmpdir" => "./tmp"})

と書いたりしていますが、
参考サイト様(http://tech.maid-san.org/archives/166)のtmpdirとはちょっと変えてあります。
tmpdirは記述しなくてもいいみたいですが…
問題が1つ。
sessionを利用しているrbファイル以下に、LOCKファイルや拡張子のないファイルが大量にできます…。
そのため、tmpというディレクトリを作成して、

"tmpdir" => "./tmp"

としたところ、tmpファイルの中に、作成されるようになりました。

下に書いた参考サイトによると、

"tmpdir"
CGI::Session::FileStore がセッションデータを作成するディレクトリの名前 (default: ENV["TMP"] || "/tmp")

との事です。

print Dir.tmpdir

で、どこにtmpdirが設定されているのかわかるので、やって見ると言いと思います。


大量のファイルが出来てしまうので、とりあえず設定はしといたほうがよさそうです。