ホームページ >バックエンド開発 >PHPチュートリアル >PHP は自動的に Home モジュール ソリューションにジャンプします
php は、thinkPhP フレームワークを使用して、自動的にホーム モジュール
にジャンプします
ブラウザに入力
http://127.0.0.1/NovoMagic/index.php/Dac/ Test /d
自動的にログイン ページにジャンプします
http://127.0.0.1/NovoMagic/index.php/Home/Login/index.html
私は /Dac にいます/Test/dには何も書き込まれません。なぜログイン ページにジャンプするのですか?
次のように Firebug を使用してネットワークの状況を確認します。
ヘルプ; なぜログイン ページにジャンプしますか?
追記: ログインして http://127.0.0.1/NovoMagic/index.php/Dac/Test/d にアクセスしても問題はありません。
インターセプター機能を実装したようで、すべての URL が自動的にインターセプトされます。 。 。 。ただし、関連するものは何も設定していません
-----ソリューションのアイデア----------------------
TPには詳しくありません。私の推測では、継承したコントローラーまたは呼び出された特定のファイルにログインチェックがあると思います。
詳細を知るにはコードを読む必要があります。
------ソリューションのアイデア----------------------
インポートされたファイル common.php は、 init 初期化関数など、そこには何かが書かれています。
------解決策のアイデア----------------------
魔法の問題、次のことを確認してくださいコントローラーと、ログインするかどうかを決定するために導入した common.php にコードがありますか?
------解決策----------------------
thinkphp には _initialize() メソッドがあります。このモジュールの関数を実行すると、このメソッドが最初に自動的に実行されます
ファイルにこのメソッドがあるかどうかを確認してください
-----解決策のアイデア---------- - -----------
初期化メソッドにログインするかどうかを判断するコードがありますので確認してください。
------解決策のアイデア----------------------
これはルーティングの問題であるはずです。見てください nginx を使用していますか? nginx が TP を使用する場合はルーティングを構成し、ルーティング モードを
'URL_MODEL' => 0, // URL アクセス モード、オプションのパラメーター 0、1、2、3 に変更し、次の 4 つのモードを表す必要があります
を試す------解決策のアイデア----------------------
ランタイムで見る ログ ログは次のとおりです。一目でわかる