如何解决<If>子句以RewriteRule失败
我的.htaccess
中已经有以下指令
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.PHP/$1 [QSA,C]
<If "-f %{DOCUMENT_ROOT} . '/maintenance/off.PHP'">
RewriteCond %{REMOTE_ADDR} !=1.2.3.4
RewriteCond %{REQUEST_URI} !^/maintenance
RewriteRule .* /maintenance/off.PHP [L]
</If>
</IfModule>
这不能正常工作。 If
子句正在触发,但是当我从允许的IP访问它时,它以某种方式失败。如果我只是删除<If>
子句,它将再次起作用。我找不到如何使用RewriteCond
来检查我的文件标志是否存在。
编辑:我正在使用RewriteCond %{DOCUMENT_ROOT}/maintenance/off.html -f
,它工作正常,只是发现<If>
无法正常工作很奇怪。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。