如果我通过重写条件禁止IP,如何将它们发送到自定义403页面?
param(
[parameter(mandatory=$true)]
[string]$IP,
[parameter(mandatory=$true)]
[string]$Time
)
Write-Host $IP
Write-Host $Time
当p被拒绝时,以无限循环发送它,但是我不希望使用默认的403禁止页面。我有一个我希望显示的自定义页面。我将其命名为403error.html并将其放在顶级html目录中。我怎么能否认除自定义错误页面以外的所有页面?
答案 0 :(得分:1)
是的,该规则导致无限循环错误,因为当禁止的ip尝试访问该站点时,它们首先被重定向到403页面,然后403页面重定向回自身,导致无休止的内部重定向。要解决此问题,我们需要从规则中排除403页面或重写目标:
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^00\.00\.00\.00$
RewriteRule !403error\.html$ /403error.html [L]
这将向禁止的ip显示您的自定义错误页面。
答案 1 :(得分:0)
我通过将代码直接写入ErrorDocument调用并引用/托管姐妹域所需的映像来暂时“修补”我的问题。但是,我仍然想知道是否可以在原始域中托管图像或html文档。
ErrorDocument 403 "<body bgcolor=#9C1409><br><br><center><a href=mailto:someone@somewhere.com><img src=http://www.somewhereelse.com/403error.jpg border=0></a></center>"