我在Angularjs应用中有此规则。完美运作。但我想了解一条我不知道它在做什么的规则public partial class Form2 : Form
{
public Form2() => InitializeComponent();
Form1 openForm = new Form1();
private static bool isOpen = true;
private void button1_Click(object sender, EventArgs e)
{
if (isOpen) openForm.Show();
else openForm.Hide();
isOpen = !isOpen;
}
}
RewriteRule ^.*$ - [NC,L] #???
请协助我执行此规则RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -!f
RewriteRule ^.*$ - [NC,L] #NC none-case-sensitive, L stop when match
RewriteRule ^(.*) index.html [NC,L]
,我了解RewriteRule ^.*$ - [NC,L]
标志,但是我没有得到[NC,L]
,尤其是规则末尾的空破折号。
答案 0 :(得分:1)
RewriteRule
的语法是:
RewriteRule Pattern Substitution [flags]
您的规则是:
RewriteRule ^.*$ - [NC,L]
^.*$
是perl兼容的正则表达式,其中
^
是字符串的开头.
是除换行符之外的任何字符*
表示0次或多次$
是字符串的结尾。替换为-
,这意味着:“不应执行替换(现有路径未经修改地传递)。当需要应用标志而不更改路径时使用此方式。” < / p>
标志为NC
和L
,表示:
NC
:使模式比较不区分大小写。L
:立即停止重写过程,并且不再应用任何规则。尤其要注意每个目录和.htaccess上下文的注意事项(另请参阅END标志)。因此,此规则匹配任何内容,不进行替换,并立即停止重写过程。