Rhel
使用 Apache 重定向規則阻止特定的 URI
我想用以下模式阻止 URL
172.31.X.X "172.31.X.X" - - [19/Apr/2019:06:33:56 +1000] "POST /wp-cron.php?doing_wp_cron=1555619633.5413479804992675781250 HTTP/1.1" 302 274 "http://www.example.com/wp-cron.php?doing_wp_cron=1555619633.5413479804992675781250" "WordPress/4.9.5; https://www.example.com.au" 155 "-" "Cookies:-" –
我嘗試了以下但似乎沒有工作
RewriteCond %{REQUEST_URI} ^/wp-cron.php?doing_wp_cron=[0-9]+$ [NC] RewriteRule ^.*$ - [F,L]
您需要
RewriteCond %{QUERY_STRING}
查詢字元串,並且必須轉義.
以匹配點。https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#rewritecond
REQUEST_URI
請求的 URI 的路徑組件,例如“/index.html”。這特別排除了可作為其自己的名為 QUERY_STRING 的變數的查詢字元串。
RewriteEngine On # this matches: # /wp-cron.php?doing_wp_cron=1555619633.5413479804992675781250 # /wp-cRoN.php?DOING_wp_cron=.&foo=bar # /wp-cron.php?foo=bar&doing_wp_cron=. RewriteCond %{QUERY_STRING} (^|&)doing_wp_cron=[0-9\.]+(&|$) [NC] RewriteRule ^/wp-cron.php$ - [NC,F,L]