.htaccess 是否每次都在〈IfModule mod_rewrite.c>中打开重写引擎?

kb5ga3dv  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(272)

我想知道,当RewriteEngine On嵌入在IfModule mod_rewrite. c中时,我是否只能在htaccess中使用一次,或者我必须每次都使用它,* 因为 * 它是嵌入式的?
请参阅下面的示例。谢谢

<ifModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} /?author   [NC]
RewriteRule .* - [F]
</ifModule>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} g=  [NC]
RewriteRule ^(.*)$ - [F,L]
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
mftmpeh8

mftmpeh81#

您应该能够对所有重写代码进行一次检查。
我从你的代码中怀疑你正在工作的网站将无法正常工作或者mod_rewrite根本没有启用。在这种情况下,我会完全省略对mod_rewrite的检查,如果没有启用,让Web服务器失败。
如果你的代码安装在一个没有启用mod_rewrite的web服务器上,那么调试和准确定位问题将变得容易得多。

相关问题