1年前までFuelを実務で使っていたものです。
最近久々にPHP(FuelPHP)でサイトを開発しており、本番環境でエラーが万が一出た場合、
通常のdevelopment環境だとエラーが詳細なめ、本番環境ではエラーの出し方を変えるためboostrap.phpを
Fuel::$env = (isset($_SERVER['FUEL_ENV']) ? $_SERVER['FUEL_ENV'] : Fuel::PRODUCTION)
としました。
すると、本番環境(example.com)にアクセスすると、example.comにアクセスした時のトップページ
(rootで、welcomeクラスからwelcome/indexを参照しています)
が必ず、エラー(Oops!)が出てしまい困っています。
developmentに直し、更新かけるとOops!エラーは出ません。
いろいろと試して見て、productionに変更し他のページにアクセスすると(例えばexample.com/article/20)
エラーは出ていません。
そこで、articleクラスの中身をあえて、エラーが出るようにして見たら、Oops!エラーが出ています。
この動作はproductionにしているので正しい動作ですが、
なぜかproductionにすると、本番環境のドメインでアクセスした場合のみ、本来エラーがないページで
Oops!エラーが出てしまっています。
どなたか何か原因がわかる方いますでしょうか??
ご教授願いしたいです。
余談ですが、いっそ本番はOops!でもなく、エラーを完全に出さないようにしようと思い、
public/indexを以下のようにしたりもしましたが、
error_reporting(0); ini_set('display_errors', 0);
通常のエラーが出てしまいます。
また、nginxの設定ファイルでも、fastcgi_param FUEL_ENV production;とした場合も、
ドメインのトップのみ必ず、Oops!が表示されます。
(繰り返しですが、developmentにしてエラーが詳細に出る場合であれば、ドメインにアクセスした場合は
エラーは出ていません。)
長々と書きましたが、宜しくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。