rah/rah_ip_range

基于模板内的IP地址范围阻止Textpattern CMS访客

资助包维护!
www.paypal.me/jukkasvahn

安装: 8

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 3

分支: 1

开放问题: 0

类型:textpattern-plugin

0.5.0 2022-04-16 23:59 UTC

This package is auto-updated.

Last update: 2024-09-17 04:55:34 UTC


README

下载 | Packagist | 问题

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范围,由fromto属性设置。处于指定范围内的访客将被拒绝或允许访问内容,这取决于denyallow布尔属性。

该标签可以用作容器,也可以用作自闭合的单标签。当用作单标签时,如果访客处于被拒绝的范围内,则调用错误页面。作为容器,该标签会隐藏包装的内容,但不会调用错误页面。容器还可以接受一个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 属性拆分为 allowdeny 布尔属性。
  • 现在需要 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

  • 首次发布。