FuelPHPでのConfigの挙動ではまった
2013年08月13日 16時28分
久々FuelPHPネタ。
今回、はまったのはConfigクラス。
なーにも考えずにDBの設定読み込みたいなと思った時に以下のように書きました。
|
// db.config の読み込み Config::load('db'); // 接続設定 確認 Config::get('default'); |
ここまでの挙動は問題なかったんですがこれやるとフレームワーク側の動きが正常に動かなくなります。
続きをみる
crontabでsudoを利用する時の注意点など
2013年05月20日 14時15分
crontabでタスクを実行して日次や週次処理を実行するようなこと多いと思います。
その時に何も考えずにログインしたユーザでcrontabを設定していたらその時に生成されるログファイル等の所有者がapacheでなく仕掛けたユーザになって正常にログが出力されないというとても残念なことになるのでその対応。
|
/bin/env FUEL_ENV=production /usr/bin/php /path/fuelphp/oil refine employee |
これだとcrontabを仕掛けた時のユーザ権限で実行されてしまうのでsudoしました。
|
sudo -u apache /bin/env FUEL_ENV=production /usr/bin/php /path/fuelphp/oil refine employee |
しかしsudoにてパスワードを求められてしまいうまくいかないのでvisudoでsudoに関する設定を変更します。
続きをみる
続・FuelPHPで巨大ファイルのダウンロードさせる
2013年05月01日 18時10分
前の記事でFuelPHPでのファイルのダウンロードが上手く動いたと書いたのですが本番環境だけ以下のようなエラーが出て悩んでおりました。
|
Fatal error: Exception thrown without a stack frame in Unknown on line 0 |
ダウンロードしたファイルの最後に上のエラーメッセージが付いてしまっていました。
ダウンロードファイルがzipファイルでエラーメッセージが付いていても正常に展開できていたので気付くのが遅れてしまいました。
後、ob_startが絡んでいるのかFuelPHPのログに出てなかったんですよね。
このエラーメッセージは何?とGoogle先生に聞いてみるとFuelPHPでこのエラーの場合はtimezoneが設定されていないのでconfig.phpで設定しましょうとばかり出てきます。
その設定は既にしているので今回は別原因です。
続きをみる
FuelPHP(or PHP)で巨大ファイルのダウンロードさせる
2013年04月18日 17時47分
※ 2013年5月1日 追記: この記事に乗っている内容で問題&勘違いがあったので続きを追加しました。こちらをお勧めします。
続・FuelPHPで巨大ファイルのダウンロードさせる
結構サイズの大きいファイルをダウンロードさせたい時に
何も考えずにFile::read($path)を実行したらメモリー不足エラーが出てしまいました。
Error – Allowed memory size of 10485760 bytes exhausted (tried to allocate 34990081 bytes)
File::read()の中を読んでみると第2引数の$as_stringがfalseの場合、
readfile関数でブラウザ出力していました。
これだとファイルサイズ分だけメモリを消費してしまうのでphp.iniか.htaccessでmemory_limitを必要な分だけ増やすか、ファイルを少し読み込んではレスポンスに出力するストリーミング的な処理をする必要があります。
勿論、今回の対処は後者です。
続きをみる
FuelPHPで1サイトを作ってみて気が付いた点など
2012年12月21日 00時13分
FuelPHP Advent Calendar 2012(#FuelPHPAdvent2012)21日目です。
前日の記事は@haltcompilerさんのFuelPHPのormを複数DBに対応させる方法でした。
本日は私が初めてFuelPHPを使った時に、躓いたことの解決法を焦点を絞らずに書いていきたいと思います。
続きをみる