専門家があなたの Web サイトを閲覧すると、Web サイトのエラー メッセージがハッカーにあなたの Web サイトを攻撃するための情報を提供します。たとえば、空のオペレーションと空のコントローラーの場合、Web サイトのバックエンドで使用されるフレームワークがハッカーに公開され、ハッカーはフレームワークの脆弱性に基づいて Web サイトを攻撃します。したがって、ハッカーに手がかりを残さずに、空のコントローラーと空の操作を処理する必要があります。
まず、効果を見てみましょう:
これにアクセスしようとすると、IndexController.class.php ファイルに hello メソッドがありません。メソッドを実行すると、次のメッセージが報告されます:
注: no-op の本質は次のとおりです: オブジェクト (コントローラー) が存在しないメソッドを呼び出す
ThinkPHP を理解している開発者にとっては、これは簡単に理解できます。この Web サイトのバックエンドは ThinkPHP フレームワークを使用していること。では、これらの問題をブロックするにはどうすればよいでしょうか?今日はそれについて話します。
このようにして、hello メソッドに再度アクセスすると、コントローラーの __call( がデフォルトで呼び出されます $メソッド,$args) メソッド。
でも!多くのコントローラーがある場合、コントローラーごとに __call($method,$args) メソッドを記述する必要がありますか?明らかに無理です!したがって、継承を通じてこのメソッドをコントローラーの親クラスに書き込む必要があります。 Controller.class.php に移動すると、 __call() メソッドが見つかります。TP の考えでは、コントローラーに _empty() というメソッドが定義されているかどうかによって決まります。定義されている場合は、このメソッドを呼び出します
共通コントローラーの親クラスの場所: ThinkPHP/Library/Think/Controller.class.php
no- の名前と同じ名前のテンプレートを作成します。 op. システムは自動的にテンプレートを呼び出します。
BeijingController.class.php ファイルがないため、エラーが報告されます。 !
TP フレームワークのソース コードを分析した後、次の解決策が得られます
したがって、空のコントローラーを定義する必要があります。存在しないコントローラーにアクセスすると、指定したエラーに従ってエラーが報告されます。
さて、空のオペレーションや空のコントローラーの話はやめましょう O(∩_∩)O~~
専門家があなたの Web サイトを閲覧すると、あなたの Web サイトはエラーを報告します。あなたのウェブサイトを攻撃するための情報を持ったハッカー。たとえば、空のオペレーションと空のコントローラーの場合、Web サイトのバックエンドで使用されるフレームワークがハッカーに公開され、ハッカーはフレームワークの脆弱性に基づいて Web サイトを攻撃します。したがって、ハッカーに手がかりを残さずに、空のコントローラーと空の操作を処理する必要があります。
まず第一に、効果を見てください:
これにアクセスしようとすると、IndexController.class.php ファイルに hello メソッドがありません。メソッドを実行すると、次のメッセージが報告されます:
注: no-op の本質: オブジェクト (コントローラー) は、それ自体には存在しないメソッドを呼び出します
ThinkPHP を理解している開発者にとって、それは簡単です。この Web サイトのバックエンドが ThinkPHP フレームワークを使用していることを確認してください。では、これらの問題をブロックするにはどうすればよいでしょうか?今日はそれについて話します。
このようにして、hello メソッドに再度アクセスすると、コントローラーの __call($method,$argvs) がデフォルトでは ;method,$args) メソッドが呼び出されます。
でも!コントローラーがたくさんある場合、コントローラーごとに __call($method,$args) メソッドを記述する必要がありますか?明らかに無理がある!したがって、継承を通じてこのメソッドをコントローラーの親クラスに書き込む必要があります。 Controller.class.php に移動すると、 __call() メソッドが見つかります。TP の考えでは、コントローラーに _empty() というメソッドが定義されているかどうかによって決まります。定義されている場合は、このメソッドを呼び出します
共通コントローラーの親クラスの場所: ThinkPHP/Library/Think/Controller.class.php
no- の名前と同じ名前のテンプレートを作成します。 op. システムは自動的にテンプレートを呼び出します。
BeijingController.class.php ファイルがないため、エラーが報告されます。 !
TP フレームワークのソース コードを分析した後、次の解決策が得られます
したがって、空のコントローラーを定義する必要があります。存在しないコントローラーにアクセスすると、指定したエラーに従ってエラーが報告されます。
その他の ThinkPHP の空の操作と空のコントローラーの処理関連記事については、PHP 中国語 Web サイトに注目してください。