プロジェクトの都合により、これまでApacheをサーバーとして使用していたプロジェクトをNginxに変更する必要があるのですが、変更後に問題が発生しました。ドメイン名を使用して直接アクセスすると、「Webページを操作できません」というメッセージが表示されます。リダイレクトが多すぎます ERR_TOO_MANY_REDIRECTS" "。
コードの段階的なブレークポイント出力により、デフォルトのアクセス モジュール (デフォルトのコントローラとデフォルトのメソッド) が設定されていない、またはデフォルトのメソッドであることが原因であることがわかりました。デフォルトのアクセス モジュール (デフォルト コントローラおよびデフォルト メソッド) が設定されていません。デフォルト コントローラおよびデフォルト メソッド) が存在しません。これが理由です。
解決策は次のとおりです: (推奨学習: PHP ビデオ チュートリアル )
ホームページは、admin.php に直接ジャンプするように構成されています。ただし、\thinkphp のせいで、\library\think\Request.php ファイルの pathinfo() 関数は $this->pathinfo;
結果は '/' となり、この場合はデフォルト設定です。構成ファイルのコントローラーと操作で見つかります。このデフォルトのアクセス モジュール、コントローラー、およびメソッドは実行されないため、「リダイレクトが多すぎます」エラーが返されます。
tp5 の \application\config.php 設定ファイル内の、default_module (デフォルトのモジュール名) 設定、default_controller (デフォルトのコントローラ名) 設定、default_action (デフォルトの操作メソッド名) 設定を既存のものに変更するだけです。コントローラーとメソッドだけ:
// 默认模块名 'default_module' => 'home', // 默认控制器名 'default_controller' => 'Index', // 默认操作名 'default_action' => 'index',
以上がPHPで多すぎるリダイレクトを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。