0

私は非常に奇妙な問題に直面しており、誰かがここで何がうまくいかないのか考えてくれることを望んでいます.

ローカルのubuntuマシン、通常のランプスタックで複数のローカルCIプロジェクトを実行しています-それらはすべて問題ありません。

私は最近、以前に楽しく取り組んできたプロジェクトの svn チェックアウトを行いましたが、リクエストに対して http 200 応答を受け取っても、コントローラー/メソッドが表示されません。

メソッドから $this を var_dump すると、CI グローバル オブジェクトではなく、コントローラー クラスの名前が取得されます。

存在しないパスを入力すると、CI 404 ページが表示されます。

アクセス許可と apache 仮想ホストの設定は良好です。BASEURL が正しく設定されている。

index.php が URL から削除されたため、.htaccess と index.php は機能しており、正しくルーティングされたコントローラーとメソッドの組み合わせから、文字列と自然な php 関数 (class_exists() など) を引き続きダンプできます。ただし、サーバーが CI を必要とするコード ($this->load->helper() など) に到達するとすぐに処理が停止します。

小さなリードが 1 つあります。チェックアウトしたプロジェクトは、私が働いている複数の開発者にとって問題なく機能します。最近、マシンを再構築してネイティブのubuntu 12.04にする必要がありましたが、これは以前はwubi仮想ボックスでした(死亡しました)。

コントローラー/メソッド要求から var_dump を行うには、要求されたメソッドにルーティングするために、問題のコントローラーに __construct() メソッドを追加する必要がありました。

ネイティブのウェルカム コントローラー (開発チェックアウトにまだ存在します) はまったく同じ方法で動作します。var_dump を行うには、__construct() メソッドを追加する必要があります。

メソッドに parent::__construct() を追加すると (いずれかのコントローラーで)、var_dump が機能しなくなります。

私の新しいバージョンのphpは5.3.10-1で、Suhosin v0.9.33です。チェックアウトの CI バージョンは 2.1.0 です

したがって、404 の場合を除いて、本質的に CI は起動していません。

ありがとう。

4

1 に答える 1