htaccess - 這可以做到嗎? (嵌套 If 模組)

htaccess - 這可以做到嗎? (嵌套 If 模組)

如果模組測試通過,我會嘗試重定向到 URL。

像這樣的東西(這似乎對我不起作用。)

也許這是不可能的。任何人?

<IfModule mod_rewrite.c>
    <ifModule mod_gzip.c>
        RewriteEngine On
        RewriteRule ^/mod_gzip/?$ mod_gzip-is-enabled.php
    </IfModule>
</IfModule>

答案1

嵌套<IfModule>容器不是你的問題(是的,這是可能的)。 (但是外<IfModule mod_rewrite.c>容器有必要嗎?)

你的問題是RewriteRule 圖案 ^/mod_gzip/?$

RewriteRule ^/mod_gzip/?$ mod_gzip-is-enabled.php

.htaccess由於斜線前綴,這在每個目錄上下文中永遠不會匹配RewriteRule 圖案。您需要將其刪除,如下所示:

RewriteRule ^mod_gzip/?$ mod_gzip-is-enabled.php [L]

為了符合請求的 URL 形式/mod_gzip/(或/mod_gzip)。

在每個目錄.htaccess檔案中,URL 路徑RewriteRule 圖案比賽對手較少目錄前綴,特別以斜槓結尾。因此匹配的 URL 路徑永遠不會以斜線開頭。 (這與在伺服器或虛擬主機上下文中使用指令時不同。)

L另外,如果您有其他指令,您可能應該包含該標誌。

相關內容