我们如何添加第二个允许查看正在开发的站点的IP地址?
我们可以只附加第二个REMOTE_ADDR
因为默认标志是[AND]
# BEGIN Maintenance
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^11\\.111\\.111\\.11$ #First Address
RewriteCond %{REMOTE_ADDR} !^123\\.45\\.67\\.89$ #Second Address
RewriteCond %{REQUEST_URI} !^/maintenance\\.html$
RewriteRule ^(.*)$ http://example.com/maintenance.html [R=307,L]
</IfModule>
# END Maintenance
上述规则规定,如果
the request if not from first ip and not from second ip and the request is not /maintenance.html
将其重定向到带有标题的维护页面
502. 支持@cybmeta,服务器维护的正确标头为
502 和
307 用于临时重定向。
的处理顺序RewriteRule
:
首先检查重写规则^(.*)$的模式如果模式结果为真,则条件!^11\\.111\\.111\\.11$
将进行检查如果该条件为真或or标志设置为条件!^123\\.45\\.67\\.89$
,将检查第二个条件如果这个条件也是真的,那么三,依此类推,最后,从RewriteRule
已应用这条规则是否应该优先于其他规则.htaccess
WordPress中的规则?
是/否,这取决于你的规则,最好是在WordPress之上.htaccess
否则生成规则flag[L]
(last) 在WordPress中,规则停止处理下一个规则。
[L]标志导致mod\\u rewrite停止处理规则集。在大多数上下文中,这意味着如果规则匹配,则不会处理进一步的规则。这对应于Perl中的最后一个命令,或C中的break命令。使用此标志指示应立即应用当前规则,而不考虑其他规则。
在您的情况下,您可以将其放在顶部或底部。(未测试)