スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[PHP] $_SESSION が急に効かなくなった? サーバの一時ファイルの容量が問題かも

タイトルでほぼ結論書いてしまってるのですが、
事象としては、とあるシステムのログインが効かなくなったと。
具体的な動きとしては、ログインの認証は成功するのでデータベースまわりは
問題ないけれど、ログイン後に遷移しているページでそのログイン情報を確認できず
(つまりは $_SESSION['xxxx'] の中身が空)、ログインページに戻されるというもの。

なんやらかんやら試してみて、
php.ini でセッションを管理するためのファイルを保存する場所の設定
session.save-path などをどこか任意に作った書き込みOKの場所に設定してみると
ちゃんとセッションファイルもできてるし、ログインも正常に行ったりします。
他にも検証しているとファイルのアップロードも失敗して、これもどうやらサーバの
一時領域への保存に失敗しているのではないかと思われました。

このときはログを見ることを失念していたのですが、どうやら
PHP Warning: Unknown(): write failed: Disk quota exceeded
というエラーログが吐かれていた模様。この事象が出たのは共有サーバで、
割り当てられているHDD容量的にはスカスカで問題がなかったものの、
共有サーバで用いている一時ファイルのディレクトリが、サーバ会社側で割り当てた
容量を越えているとの指摘をサーバ会社から受けました。

その一時領域はFTPからは確認できないものの、スクリプトを介して
確認してみると、何か巨大なファイルがあるのを確認しました。
ファイル名からしてどうやら ImageMagick という画像処理のソフトウェアがつくった
ものらしいのですが、なぜそんな巨大なファイルができているのかは不明。

内容を確認してもただ空のファイルで問題ないと思われたのでスクリプトを介して削除。
そうすると問題なく動作するようになりましたとさというお話。
関連記事
スポンサーサイト

テーマ : PHP
ジャンル : コンピュータ

comment

管理者にだけメッセージを送る

検索フォーム
リンク
最新記事
最新コメント
カテゴリ
RSSリンクの表示
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。