20
插件可选择跳转到新 URL 时附带的参数:用户设备的 IP 地址、用户设备的 MAC地址、路由器 http 服务器的 IP 和端口,路由器 LAN 口 MAC 地址,路由器 WAN 口 IP地址,认证随机数,用户原本访问的 URL。
♦ 册 规则注册 API
/* 使用关键字过滤规则的 API */
int register_http_ctrl (user_group_mask_t gmask, int type, char * url_pattern, char *redir_url, struct redirect_url*data)
/* 使用网址组的过滤规则的 API */
int register_http_ctrl_by_url_group(user_group_mask_t gmask, int type, int url_gid, char *redir_url, struct redirect_url *data)
/* 仅对指定用户在访问关键网址时重定向一次 */
int register_http_ctrl_once(struct in_addr addr, int type, char *url_pattern, char *redir_url, struct redirect_url*data)
/* 仅对指定用户访问特定 URL 组时重定向一次 */
int register_http_ctrl_once_by_url_group(struct in_addr addr, int type, int url_gid, char *redir_url, struct redirect_url*data)
参数:
gmask[in]: 规则的目标用户组
type[in]: 操作类型,使用 HTTP_CTRL_TYPE_前缀的宏:
HTTP_CTRL_TYPE_WEBAUTH web 认证跳转
HTTP_CTRL_TYPE_REDIRECT URL 重定向
url_pattern[in]: 关键字过滤规则
对 URL 的 host 中包含该关键字的请求进行操作。url_pattern
可以为 NULL,则匹配所有网址 。
host 中包含的一个或多个连续的完整分段,需要与 url_pattern
完全相同才匹配成功。例如:用户访问 abc.def.com/xxx/xxx.html
时,host 为 abc.def.com,若 url_pattern 为 def 或为 abc.def,
则匹配成功;url_pattern 为 ab,则匹配失败。
url_gid[in]: 网址组过滤规则
匹配指定网址组的访问请求
redir_url[in]: type 为 HTTP_CTRL_TYPE_WEBAUTH 或
HTTP_CTRL_TYPE_ REDIRECT 时为跳转的 URL
data[in]:扩展参数