PHPのフレームワークであるCodeigniterを触る機会があったので、以下のようなエラーに遭遇しました。

Unable create file session/ci_session7990989waoooo because No such file or directory

とりあえずセッションファイルがないということがエラーで判断できる。
ということでセッションファイル全消ししてみたがm挙動が変わらなかったので対処法をブログしやす🙃


■Environment

  • CentOS7.5.1804 (Core)
  • PHP 5.6.37
  • Codeigniter 3.0.1 

■file session driver have a problem about path. #3664

https://github.com/bcit-ci/CodeIgniter/issues/3664

$this->_config[‘save_path’] must be absolute path. if first char is not ‘/’. must add FCPATH.

セッションパスは絶対パスで書く必要があるとのこと!!!


■config.php

アプリケーションのconfigファイルにセッションを設定する箇所があります。
sess_save_pathがNULLの場合はphp.iniの「session.save_path」に従って保存されます。
今回は絶対パスをぶち込みましょう!

・php-fpm restart

🤩


■まとめ

Codeigniterは軽量で速度重視のための動的Webサイトでよく使われるフレームワークだそうだ。
ちなみにPHP7系ではセッションはMySQLやらRedisで管理するほうが望ましいみたい。

http://codeigniter.jp/user_guide/3/libraries/sessions.html#id18

The following two tabs change content below.

あだちん

1989年生まれ。 ランサーズ/SRE。 ホスティングから大規模なアドテクなどのインフラエンジニアとして携わり、ランサーズにてサーバ系のお仕事も副業で行い、他社インフラレスポンス改善、ansibleでのインフラコード化を推進し、未経験によるエンジニア勉強会なども実施している。 そして「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/広報/VulsRepo init file,chatwork通知のコントリビュータでもある。 現在はDocker開発環境の提供,AWSで新サービスのインフラ構築,PHPバージョンアップ,分析基盤を担当しておりDigdag,embulk,BigQueryを使いこなそうと奮闘中。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください