rah / rah_ip_range
基于模板内的IP地址范围阻止Textpattern CMS访客
Requires
- php: >=5.6.0
- textpattern/installer: *
- textpattern/lock: >=4.7.0
Requires (Dev)
- rah/mtxpc: ^0.9.0
- squizlabs/php_codesniffer: 3.*
This package is auto-updated.
Last update: 2024-09-17 04:55:34 UTC
README
Rah_ip_range是一个Textpattern CMS插件,用于根据访客的IP地址限制他们对网站内容的访问。该插件引入了一个小型的Textpattern标签,它接受IP地址范围和执行的动作。该标签可以用于隐藏页面模板的部分内容或调用可定制的错误页面。
安装
使用 Composer
$ composer require rah/rah_ip_range
或者 下载 安装程序包。
基本
<rah::ip_range deny from="127.0.0.1" to="127.0.0.1">
...contained statements...
</rah::ip_range>
该插件引入了一个新的Textpattern标签,<rah::ip_range />
。该标签可以用于根据访客的IP地址限制他们对页面模板内容或整个页面的访问。该标签接受一个IP范围,由from
和to
属性设置。处于指定范围内的访客将被拒绝或允许访问内容,这取决于deny
或allow
布尔属性。
该标签可以用作容器,也可以用作自闭合的单标签。当用作单标签时,如果访客处于被拒绝的范围内,则调用错误页面。作为容器,该标签会隐藏包装的内容,但不会调用错误页面。容器还可以接受一个else语句,作为拒绝访客的替代内容。
属性
message
显示给被阻止访客的错误信息。
示例:message="对不起,我们无法这样做。"
默认:"禁止。"
status
HTTP错误状态码返回给被阻止的访客。当标签用作容器时,此选项被忽略。
示例:status="404"
默认:"403"
from
IP范围的起始IP(或部分IP)。默认未设置。
示例:from="127.0.0.1"
默认:""
to
IP范围的结束IP(或部分IP)。默认未设置。
示例:to="127.0.0.100"
默认:""
allow
允许指定IP范围内的访客。这是默认操作。
示例:allow
默认:allow
deny
拒绝指定IP范围内的访客。与allow相反。
示例:deny
默认:未定义
示例
用作自闭合的单标签
<rah::ip_range deny from="127.0.0.1" to="127.0.0.100" message="Access denied."/>
处于127.0.0.1-127.0.0.100范围内的访客将被阻止,将看到错误页面。
用作容器
<rah::ip_range from="127.0.0.1" to="127.0.0.100">
<a href="http://example.com">Important link</a>.
<txp:else />
Link is hidden.
</rah::ip_range>
处于127.0.0.1-127.0.0.100范围内的访客将看到重要链接,而其他人将看不到。相反,他们将在链接所在位置显示“链接已隐藏。”消息。
变更日志
版本 0.5.0 – 2022/04/17
- 注册标签以兼容Textpattern >= 4.7.0。
- 将
fromip
重命名为from
,将toip
重命名为to
,将method
属性拆分为allow
和deny
布尔属性。 - 现在需要 Textpattern >= 4.7.0。
版本 0.4 – 2012/07/13
- 新增:为容器模式添加了对 else (
<txp:else />
) 标签的支持。 - 更改:默认 HTTP 状态从 503 服务不可用 更改为 403 禁止访问。
- 更改:默认消息更改为
Forbidden.
,403_forbidden
l18n 字符串。 - 更改:当标签用作容器时,
message
属性不再适用,可以使用 else 替代。
版本 0.3 – 2011/06/29
- 更改:不需要解析
message
的内容。可以使用解析器的直接引号功能代替。 - 更改:将参数传递给
txp_die()
时使用字符串而不是数组。
版本 0.2 – 2011/06/25
- 新增:容器标签模式。
版本 0.1 – 2008/10/31
- 首次发布。