gpt4 book ai didi

apache - 如果存在而不是 IP,htaccess 重写到维护页面,否则 Bootstrap

转载 作者:行者123 更新时间:2023-12-05 00:00:39 30 4
gpt4 key购买 nike

我将如何将所有请求重写为 maintenance.php , 如果它存在,除了图像和 IP 白名单。

maintenance.php不存在,如果请求的文件不存在,它应该重写到 bootstrap ( index.php )。

maintenance.php确实存在并且 IP 在白名单中,那么如果请求的文件不存在,它应该重写到 bootstrap ( index.php )。

我尝试了以下许多变体:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{DOCUMENT_ROOT}/maintenance.php -f
RewriteCond %{REQUEST_FILENAME} !\.(jpg|png|gif)$
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123$
RewriteCond %{REMOTE_ADDR} !^111\.111\.111\.111$
RewriteRule . maintenance.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
</IfModule>

最佳答案

我会反过来做。如果维护页面不存在或 IP 有效,则重写 bootstrap 。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/maintenance.php !-f [OR]
RewriteCond %{REMOTE_ADDR} ^123\.123\.123\.123$ [OR]
RewriteCond %{REMOTE_ADDR} ^111\.111\.111\.111$
RewriteRule . index.php [L]

RewriteCond %{DOCUMENT_ROOT}/maintenance.php -f
RewriteCond %{REQUEST_FILENAME} !\.(jpg|png|gif)$
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123$ [OR]
RewriteCond %{REMOTE_ADDR} !^111\.111\.111\.111$
RewriteRule . maintenance.php [L]

所以,基本上它会运行 index.php IF:
(Not a file) 
&& (Not a dir)
&& (
(Maintenance Doesn't Exist)
|| (Remote Addr == 123.123.123.123)
|| (Remote Addr == 111.111.111)
)

我们可以使用命题逻辑来扩展它,但是为什么要麻烦...

关于apache - 如果存在而不是 IP,htaccess 重写到维护页面,否则 Bootstrap ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9833581/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com