我想将我的网页置于维护状态,因此我用以下内容替换原来的htaccess文件:
ErrorDocument 403 /maintenance/maintenance.php
order deny,allow
deny from all
allow from 111.222.333.444
在发布之前已经阅读了很多帖子,这是我收集的将是正确的解决方案,但我不能让它工作。如果我不允许使用我自己的IP,我会收到错误500(这意味着我的访问者会看到),如果我使用我的IP,我会得到错误403(我甚至没有到达我的维护页面,这就是我那里也不允许。)
我在这里做错了什么?提前谢谢。
答案 0 :(得分:6)
找到适合我的解决方案。
RewriteEngine On
RewriteBase /
#ip is not your ip. Change ip to see maintenance page
RewriteCond %{REMOTE_ADDR} !^111\.222\.333\.444$
#requests made not to maintenance.php ...
RewriteCond %{REQUEST_URI} !^/maintenance\.php$
#rewrite to maintenance.php
RewriteRule ^(.*)$ /maintenance.php [L]
答案 1 :(得分:0)
您发布的.htaccess使用Allow from 127.0.0.1
为我工作,但您需要在maintenance
目录中添加额外的.htaccess,以便访问maintenance.php
错误文档
Order allow,deny
Allow from all
答案 2 :(得分:0)
尝试我的提示,将此代码粘贴到您网站的.htaccess
,以便将您网域的所有网页重新映射到/maintenance.html
文件,如果观看者的I.P.和你的不一样:
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^000\.111\.222\.333
RewriteCond ^(.*) /maintenance.html
请注意,必须更改号码000\.111\.222\.333
作为您的I.P.地址,并创建一个/maintenance.html
文件,您的网页将被重新映射。