私はisapi_rewriteのデバッグログでこれをやりました。それはうまくいきますが、あなたの脳の融解には役立ちません。真のデバッガがいいでしょう。
isapi_rewrite v3を使用していると仮定します。
ログはメインhttpd.confファイルで制御されます。このファイルを "マネージャ"アプリケーションで編集し、スタート - >プログラム - > Helicon - > ISAPI_Rewrite 3 - > ISAPI_Rewrite Manager
のいずれかを手動で編集します。C:\ Program Files \ Helicon \ ISAPI_Rewrite 3 \ httpd.conf(または同等のWindowsインストールディレクトリ)。私はそれが隠されていると信じているので、あなたは隠れたファイルを表示する必要があります。
これは私がこのファイルに書き込んだコメントですので、設定を覚えています。必要に応じてラインをコメントアウトしてコメントアウトします。
# Logging
# RewriteLog specifies log file.
# RewriteLogLevel specifies verbosity. 0 = none, 9 = all.
#RewriteLogLevel 9
# LogLevel is for general logging for config file loading problems, not rewriting. Default is warn.
#LogLevel debug
RewriteLogLevel
は、ログオンとログオフを切り替える設定です。私は一般的に0か9を使います。私は好奇心から他の設定を試みましたが、詳細は分かりません。私が問題を追いかけているのであれば、私はそれを全部欲しい。
はRewriteLogは、代替ログ・ファイルを指定するだろうが、私は何も指定しないでおき、それがCにRewrite.log
に書いている:\プログラムファイル\ヘリ\ ISAPI_Rewrite 3 \(または同等のWindowsインストールディレクトリ)
(私が持っていますLogLevelを使用することはほとんどありません;使用しないことを思い出させるためコメントアウトしておきます)
先頭の#
を削除してコメントを外し、保存します。 (エディタで、左上のApplyをクリックするかctrl-s;メインダイアログで再度Applyをクリックします。メインダイアログを開いたままにしておくと、すぐにコメントアウトすることができます)
Rewrite.logファイルは、早くいっぱいになる。これは実際にあなたの要求が唯一の開発システムで実用的です。プロダクションに参加している場合は、電源を入れ、ページを叩いてすぐに電源を切ってください。ログファイルには、ルールの検索に役立つIPアドレスがあります。
最初のリクエストは、すべてのルールを通過して一致するまで表示されます。それから、[INTERNAL REDIRECT]
が表示されます。これは、ルールを書き直したことを意味します(これは、しばらく私をだましてしまった誤解です。実際のWebリダイレクトの場合は、明示的に強制的にリダイレクトしています。ここで
は私の答えからこの質問へのログファイルの例です:
How to redirect a page in ISAPI_Rewrite
これは/ cnvrtに変換/リダイレクトし、その後、/あなたが最初に見ることができます
を/convert.aspxに変換書き換えます。リダイレクトとのマッチングをブロックして実行します。次に、2番目のブロックは/ convert URLに一致し、convert.aspxに書き直されます。一致がない場合は、すべてのルールに該当します。私のブラウザが見つけられなかったfavicon.icoを探しに行った3番目のブロックでこれを見ることができます。
これらのログは、すべての要求がどのくらい通過するかを知るためのものでもあります。すべての画像、スタイルシートなどはすべてのルールに従います。私は/ img、/ images、* .css、* .jsをキャッチするための "ショートカット"ルールで遊び、何も変えずにただ終了しました。あなたはこれらを以下で一致させようとしているのを見ることができる。
最後の注記:行われ、ロギングがオフになっているときに、ちょうど開いて、空に必ずと Rewrite.logを保存し、約ヘリコンフォーラムで多くの記事がありますRewrite.logを削除しないでくださいファイルを再作成する際に権限が苦労します。明らかにisapi_rewriteはそれをインストールして編集することができますが、それを再作成する際に問題が生じる可能性があります。
(Deleted IP addresses, date and time, domain and some session id tracking)
(1) Htaccess process request C:\Program Files\Helicon\ISAPI_Rewrite3\httpd.conf
(1) Htaccess process request d:\websitepath\.htaccess
(3) applying pattern '^(?:/img/|/images/)' to uri '/cnvrt'
(3) applying pattern '(?:\.css|\.js)$' to uri '/cnvrt'
(3) applying pattern '(.*)' to uri '/cnvrt'
(4) RewriteCond: input='www.yourdomain.com' pattern='^(?!www\.|x\.|loc)(.*)$' => not-matched
(3) applying pattern '^/cnvrt$' to uri '/cnvrt'
(1) escaping /convert
(2) explicitly forcing redirect with http://www.yourdomain.com/convert
(2) internal redirect with /cnvrt [INTERNAL REDIRECT]
(2) init rewrite engine with requested uri /convert
(1) Htaccess process request C:\Program Files\Helicon\ISAPI_Rewrite3\httpd.conf
(1) Htaccess process request d:\websitepath\.htaccess
(3) applying pattern '^(?:/img/|/images/)' to uri '/convert'
(3) applying pattern '(?:\.css|\.js)$' to uri '/convert'
(3) applying pattern '(.*)' to uri '/convert'
(4) RewriteCond: input='www.yourdomain.com' pattern='^(?!www\.|x\.|loc)(.*)$' => not-matched
(3) applying pattern '^/cnvrt$' to uri '/convert'
(3) applying pattern '^/convert$' to uri '/convert'
(1) Rewrite URL to >> /projects/rw/convert.aspx
(2) rewrite '/convert' -> '/projects/rw/convert.aspx'
(2) internal redirect with /projects/rw/convert.aspx [INTERNAL REDIRECT]
(2) init rewrite engine with requested uri /favicon.ico
(1) Htaccess process request C:\Program Files\Helicon\ISAPI_Rewrite3\httpd.conf
(1) Htaccess process request d:\websitepath\.htaccess
(3) applying pattern '^(?:/img/|/images/)' to uri '/favicon.ico'
(3) applying pattern '(?:\.css|\.js)$' to uri '/favicon.ico'
(3) applying pattern '(.*)' to uri '/favicon.ico'
(4) RewriteCond: input='www.yourdomain.com' pattern='^(?!www\.|x\.|loc)(.*)$' => not-matched
(3) applying pattern '^/cnvrt$' to uri '/favicon.ico'
(3) applying pattern '^/convert$' to uri '/favicon.ico'
驚くほど詳細な解答、ありがとう:)私は暫定的にこれを発見し、それを大きな効果を発揮しました。しかし、最初にログを見ると脳が一時的に溶けてしまいます。これを答えにしました! – WickyNilliams
すばらしい答えをありがとう! [email protected]までご連絡ください。私はあなたと話してうれしいです。 – Yaroslav