2011-02-09 22 views
2

私のサーバーはLinuxサーバーであり、再販業者は私のものです。だから私はWHMパネルにも届く。403 GETデータを送信中に禁止されたエラー

GETデータのような来る:403禁断の

a.php?url=http://www.domain.com 

リターン。

しかし、データは次のようになれば:それは働いて

a.php?url=www.domain.com 

したがって、http://エラーを生成します。どうすれば修正できますか?

また、これは禁断の403を返して:

a.php?url=http%3a%2f%2fwww.domain.com 

感謝を。

+0

データはどこから来たのですか?これをブラウザに入力していますか?正確なアクセスが拒否されたリソースを確認するには、エラーログにアクセスできますか? –

+0

error_logには何もありません。私はブラウザに入力するか、フォームを介して送信すると、マーザはしません。 – Eray

+0

エラーログには何が表示されますか? mod_securityのようなものは、リクエストのURLに埋め込まれたURLを検出した場合(たとえば、潜在的なXSS攻撃を防止しようとしている場合など)、アクセスを積極的に拒否している可能性があります。 –

答えて

1

あなたはurlencode()

+0

は、同じエラーではありません:http://www.girmiyor.com/c.php?q = http%3a%2f%2fwww.teknoblogo.com' – Eray

+0

@Eray、あなたはURLを書き換えていますか? – jeroen

+0

番号。私の.htaccess **ファイルは空です。 – Eray

0

再見、それが有効になるように、クエリ文字列をエンコードする必要があります:404 - おそらくあなたがどこかのパスにクエリ文字列を書き換えている、とあなたが上AllowEncodedSlashesを持っていませんか?

4

これは間違いなくmod_security CoreRulesの1つです。以前のホストで同じ問題が発生しました。しかし、私はルール名を覚えていません。

コアルールのバージョンを調べる必要があります。 2.1.1は現在のもので、その特有のフィルタを緩和している可能性があります。更新や再設定が役に立たない場合は、urlパラメータをbase64_encode()する必要があります(より簡単なエンコーディングはmod_securityによって傍受されます)。

SecFilterDebugLog /var/log/apache2/modsec_log 
SecFilterDebugLevel 4 

のmod_securityのデバッグログを有効にしますので、あなたが実際に問題を引き起こしたルール・かを調べることができます - あなたはそれを無効にしたい場合は(お勧め)。 http://www.modsecurity.org/documentation/modsecurity-apache/1.9.3/modsecurity-manual.html#07-logging

+0

Erayのためにこのエラーが発生していると思っています。答えがどれも役に立たない場合は、司会者の注意を喚起してhttp://serverfault.com/に転送してください。 – mario

0

このエラーの原因となるのはmod_securityの10_asl_rules.confです。

.htaccessはそのURLの中の何かをピックアップし、禁止ヘッダーを送信しています。

関連する問題