Apache-2.2

正則表達式在 .htaccess 中不起作用

  • December 10, 2010

我正在嘗試使用以下方法限制可以在請求 URI 中使用的字元:

RewriteEngine on

重寫條件 %{REQUEST_URI} !^(

$$ a-z0-9:/._- $$)$$ NC $$ 重寫規則 ^.* -

$$ F,L $$ 由於某種原因,它不起作用。有任何想法嗎?

謝謝!

好問題。防止 XSS(跨站點腳本)的好方法。

這是解決方案:

           RewriteEngine on
           RewriteCond %{REQUEST_URI} [^a-z0-9\_\:\/\.\-] [NC]
           RewriteRule () - [F,L]

更短的等價物是:

           RewriteEngine on
           RewriteRule [^a-z0-9\_\:\/\.\-] - [F,L]

引用自:https://serverfault.com/questions/202235