簡體   English   中英

htaccess - 允許某些參數,但如果是其他查詢字符串,則重定向到404

[英]htaccess - allow certain parameters but redirect to 404 if other query string

以下問題:我在頁面上有一個表單,並希望允許某些參數啟用表單值覆蓋。 但是如果url中有一個questionmark而沒有任何參數我想重定向到404頁面。

但是我的正則表達式效果不好......

RewriteCond %{QUERY_STRING} !^(a=.*|b=.*|c=.*)
RewriteRule ^subfolder/(.*)$ - [R=404,L,NC]

但現在我的頁面只顯示是否設置了參數。 http://example.com/subfolder/不起作用,但http://example.com/subfolder/?a=whatever是有效的。 如果有一個沒有任何參數的問號,我只想要一個重定向。 怎么做?

您可以使用此規則:

RewriteCond %{QUERY_STRING} .
RewriteCond %{QUERY_STRING} !(^|&)(a|b|c)= [NC]
RewriteRule ^subfolder/(.*)$ - [R=404,L,NC]

第一個條件RewriteCond %{QUERY_STRING} . 確保QUERY_STRING非空。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM