我正在为办公室编写一个工具,使人们可以在web.config文件的rewriteMap
中提交要使用的映射,并且我正在尝试使用RegEx针对一组规则验证两条路径但是我似乎不太了解所有基础知识,因此我正在寻求一些帮助,以使这两个表达式尽可能“防弹”。
input
的{{1}}属性中使用(在其他地方)。pattern
代替的[a-zA-Z0-9_]
。\w
或http
)或域(https
或www.domain.tld
)。 * domain.tld
(路径将从重定向到 )我目前拥有的东西:
key
^[a-zA-Z0-9\-_].+?[a-zA-Z0-9\-_]$
开头或结尾。/
,但还会添加更多名称。 ** 以下(非详尽列表)提供了一些我需要拒绝的值的示例:
administration
VALUE | SHOULD BE
---------------------------|--------------
/old | old
/old/dir_name/ | old/dir_name
https://www.domain.tld/old | old
domain.tld/file name.ext | file name.ext
administration | (reject completely)
administration/dir-name | (reject completely)
(路径将被重定向到到)我目前拥有的东西:
value
^/(.+?/(.+?[a-zA-Z0-9])?)?$
开头。/
结尾。/
。以下(非详尽列表)提供了一些我需要拒绝的值的示例:
.
web.config文件(其中VALUE | SHOULD BE
----------------------------|----------------
/new | /new/
new/dir_name | /new/dir_name/
https://www.domain.tld/new/ | /new/
domain.tld/file name.ext | /file name.ext
/new/dir.name/file_name.ext | (reject completely)
是rule
的{{1}})中相关的Redirects
是:
name
*我目前正在RegReg的那部分工作;感觉最好把它排除在我的示例之外,因为它很不完整。
**这个要求仅在我开始编写此问题后才添加,这就是为什么正则表达式示例中未解决此问题。 >