主网站中子链接的URL正则表达式



我想为要在WAF中列入白名单的URL创建一个正则表达式。

对于子URL,例如:

http://www.example.com/wp-admin/admin-ajax.php?action=aks_expt

http://www.example.com/wp-admin/admin-ajax.php?action=aks_expt&aks_ex1m_expt=1

我想,我设法把regex放在了开头部分:

(https://www.|http://www.^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:.[a-zA-Z]{2,})+$)

匹配到http://www.example.com或https://www.example.com

但我不确定如何为子链接:

/wp-admin/admin-ajax.php?action=aks_expt

/wp-admin/admin-ajax.php?action=aks_expt&aks_ex1m_expt=1

我无论如何都建了一个,但失败了:

https://www.|http://www.^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:.[a-zA-Z]{2,})+$/wp-admin/admin-ajax.php?action=aks_expt

尝试以下正则表达式:

(?:https?://www.example.com)?/wp-admin/admin-ajax.php?action=aks_expt(?:&aks_ex1m_expt=1)?

演示

解释:

(?:https?://www.example.com)?           match optional leading http/https
followed by domain
/wp-admin/admin-ajax.php?action=aks_expt  mandatory path
(?:&aks_ex1m_expt=1)?                       optional query parameter

最新更新