htaccess如何要求所有子目录

时间:2016-06-21 19:22:41

标签: .htaccess

我需要说 - 这个目录和之后的任何事情。
/ thedirectory / *我怎么写这个?

此外,我正在试图找出/|$的确切含义。 !^意味着什么。

RewriteCond %{REQUEST_URI} !^/thepage(/|$)

有人可以帮我吗?研究试图找到我的问题的答案并没有得出答案。

2 个答案:

答案 0 :(得分:2)

这大约是RewriteCondregular expressions

首先回答!^,这是两件事!RewriteCond

  

CondPattern 通常是 perl兼容的正则表达式,但还有其他语法可用于对 Teststring 执行其他有用的测试:
  你可以在模式字符串前加上'!'无论使用什么样的CondPattern,否则字符(感叹号)都会否定条件的结果。

^regex

  

正则表达词汇
  ^调用锚点,匹配字符串的开头

/|$也是正则表达式

  • /匹配斜杠,没有特殊含义
  • |是一个特殊符号,表示
  • $也是一个锚点,表示字符串
  • 的结尾

所以/|$转换为:匹配斜杠或匹配字符串结尾。

答案 1 :(得分:1)

我建议在使用之前了解您的使用情况。你所拥有的条件与你想要的条件相反。您应该研究regex characters而不是基本的.htaccess帮助,因为那样会告诉您这些意味着什么。

!表示不在if not此页面then中。所以你需要删除它,因为你想在那个页面上匹配。 ^基本上意味着开始行。 $意味着结束,之后别无其他。在这种情况下不需要那样做。

你可能想要的只是简单。

RewriteCond %{REQUEST_URI} ^/thediretory/? [NC]