ホームページ  >  記事  >  バックエンド開発  >  LinuxとWindowsXPでのApacheアドレス書き換えの違いについて

LinuxとWindowsXPでのApacheアドレス書き換えの違いについて

WBOY
WBOYオリジナル
2016-06-23 13:53:10951ブラウズ

Windows の場合
RewriteCond %{HTTP_HOST} ^([^.]+).test.com$
RewriteRule ^(.+)/(.+).html$ %1/base/ss$1@$2. html [ PT ]
RewriteRule ^(.+).html$index.php/$1 [L]
上記のルールは winowsXP では通過できますが、Linux ではエラーが報告されます。 以下のようにエラー ログの内容を確認してください。 : 55 2014] [エラー] [クライアント 192.168.7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LogLevel debug」を使用して制限を増やしてください。 Mon Jul 21 15:14:55 2014] [エラー] [クライアント 192.168.7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LimitInternalRecursion」を使用して制限を増やします。バックトレースを取得するには
[Mon Jul 21 15:14:55 2014] [エラー] [クライアント 192.168.7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要な場合は、「LimitInternalRecursion」を使用して制限を増やしてください。 cessary.「LogLevel debug」を使用してバックトレースを取得します。
[Mon Jul 21 15:14:55 2014] [エラー] [クライアント 192.168.7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。「LimitInternalRecursion」を使用してください。 ' 必要な場合は制限を増やします。バックトレースを取得するには 'loglevel debug' を使用してください。
[Mon Jul 21 15:14:56 2014] [クライアント 192.168.7.176] リクエストが 10 10 10 10 10 10 の制限を超えました。 10 10 10 10 10 10 インターネットは、可能性のある構成エラーにリダイレクトします。必要に応じて、「LogLevel debug」を使用して制限を増やします
[Mon Jul 21 15:14:56 2014] [エラー] [クライアント 192.168.7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LogLevel debug」を使用して制限を増やしてください。

Linux では、変更する必要があります。それを次のルールにします
RewriteCond %{HTTP_HOST} ^([^ .]+).test.com$
RewriteRule ^(.+)/(.+).html$ %1/base/ss$1@$2. [PT]
RewriteRule ^(.+).htm$index.php/$1 [L]

WindowsXP と同じように Linux でも .html を使用したいのですが
何か方法はありますか? httpd.confの設定に問題があるのでしょうか?


ディスカッションへの返信 (解決策)

申し訳ありませんが、上記の部分は間違って書かれていました。現在は次のように修正されています:
Windows の場合
RewriteCond %{HTTP_HOST} ^([^.]+).test.com$
RewriteRule ^( .+)/(.+).html$ %1/base/ss$1@$2.html [PT]
RewriteRule ^(.+).html$index.php/$1 [L]
上記のルールは次のとおりです。 winowsXP の場合 Linux でエラーを報告できます。次のようにエラー ログの内容を確認してください
[Mon Jul 21 15:14:55 2014] [error] [client 192.168.7.176] リクエストがおそらく構成により 10 個の内部リダイレクトの制限を超えましたエラー。必要に応じて「LimitInternalRecursion」を使用して制限を増やしてください。「LogLevel debug」を使用してバックトレースを取得してください。必要に応じて、「LimitInternalRecursion」を使用して制限を増やしてください。
[Mon Jul 21 15:14:55 2014] [error] [client 192.168.7.176] ] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LogLevel debug」を使用して制限を増やしてください
[Mon Jul 21 15:14:55 2014]エラー] [クライアント 192.1 68 .7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LogLevel debug」を使用して制限を増やしてください。
[Mon Jul 21 15] :14:56 2014] [エラー] [クライアント 192.168.7.176] 構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LogLevel debug」を使用して制限を増やしてください。
[Mon Jul 21 15 :14:56 2014] [error] [client 192.168.7.176] 構成エラーが考えられるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LimitInternalRecursion」を使用して制限を増やしてください。 debug' を使用してバックトレースを取得します。
Linux では、次のルールに変更する必要があります
RewriteCond %{HTTP_HOST} ^([^.]+).test.com$
RewriteRule ^(.+)/(.+ ).html$ %1/base /ss$1@$2.htm [PT]
RewriteRule ^(.+). html$index.php/$1 [L]

WindowsXP と同じように Linux でも .html を使用したいと考えています
何か方法はありますか? httpd.confの設定に問題があるのでしょうか? Q

リクエストが構成エラーの可能性があるため、10 個のインターネット リダイレクトの制限を超えました。NECESS Ary の場合は、「loglevel debug」を使用して制限を増やしてください。制限

LimitInternalRecursion は、再帰的に呼び出される可能性があることを示します。再書き込みによって繰り返しインターセプトされ、深さが 10 レベルを超えています



構成エラーの可能性があるため、リクエストが 10 個の内部リダイレクトの制限を超えました。必要に応じて、「LogLevel debug」を使用して制限を増やしてください。リクエストあたり 10 回の書き換えの制限を超えました

LimitInternalRecursion は、再帰的に呼び出され、書き換えによって繰り返しインターセプトされた可能性があることを示しており、深さは 10 レベルを超えています

確かに再帰的です。なぜなら、
RewriteRule ^(.+)/(.+).html$ %1/base/ss$1@$2.html [PT]
RewriteRule ^(.+). html$index.php/$1 [L]

いいえ2 番目のアドレスは .html で終わるすべてのアドレスをブロックしました
1 番目のアドレスは 1 つの .html アドレスのみをブロックしました。
ただし、WindowsXP は最初の項目の実行後に停止し、正常にアクセスできますが、Linux ではエラーが報告されます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。