1

ルート フォルダー内のすべての HTTP POST 要求をブロックしようとしていますが、HTTPS POST は許可しています。サーバーの帯域幅を減らしている膨大な量の POST リクエストを処理していますが、それらはすべて HTTP です。実際の顧客が Web サイトにアクセスすると、POST アクション (ログインなど) が必要になりますが、それらはすべて HTTPS ページで行われます。問題のあるリクエストを取り除き、HTTPS POST アクションのみを許可することはできますか? 以下を使用して、ブロックできます。

RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REMOTE_ADDR} !127.0.0.1   
RewriteRule ^ / [F]

次に、HTTPS を許可するためにこれを試しました。

#if https on
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_METHOD} POST
RewriteRule ^ / [L] 

#else
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REMOTE_ADDR} !127.0.0.1   
RewriteRule ^ / [F] 

これは 500 内部サーバー エラーを返します。正当な POST リクエストはルートから発信されるため、POST を許可するサブフォルダーに特別な .htaccess を追加することはできません。

4

1 に答える 1