我试图学习htaccess基础知识,但最初的步骤让我发疯并且失去了一些宝贵的时间..
htaccess代码在以单行写入和以两行不同的方式写入时表现不同
以下代码
RewriteEngine on
RewriteRule .* good.html
以下代码
RewriteEngine on RewriteRule .* good.html
表现不同......
请解释一下它是怎么回事.. 我想,因为htaccess首先检查所有条件然后工作.. 但这也不应该让它像那样......
答案 0 :(得分:1)
Apache指令本身就是一条线。所以当你有:
RewriteEngine on RewriteRule .* good.html
第一个“单词”是指令,例如RewriteEngine
。它查找是否应该打开或关闭,下一个“单词”是on
。到目前为止,重写引擎已打开。但是之后还有一堆其他废话,它会被忽略。
但是当你有:
RewriteEngine on
RewriteRule .* good.html
重写引擎正常打开。然后处理RewriteRule
指令。该行中的第一个“字”为RewriteRule
,因此参数为RewriteRule
正则表达式 目标 [标记]
因此,当他们在不同的行上时,所有内容都会被内部重写为good.html
。同时,忽略on
之后的所有内容。