站点动态:欢迎您!今天是 2026-04-16 星期四!
Bug描述
今天论坛有人说评论有BUG,我看了一下,无意中注意到isLogCanComment函数。
function isLogCanComment($blogId) {
if (Option::get('iscomment') == 'n') {
return false;
}
$query = $this->db->query("SELECT allow_remark FROM ".DB_PREFIX."blog WHERE gid=$blogId");
$show_remark = $this->db->fetch_array($query);
if ($show_remark['allow_remark'] == 'n' || $show_remark === false) {
return false;
}else {
return true;
}
}
以上是isLogCanComment函数的代码,数据库(连接方式使用mysqli)查询$show_remark的值应该是空值NULL,所以不能用===false。
注意:数据库连接方式使用mysqli就会出现这个问题
影响就是POST伪造gid,可以把评论发布到不存在或者未审核未发布的文章下,影响应该不大。

RouterOS(以下简称ROS)经常会使用到多拨和VPN等功能,默认情况下全局流量都从默认的接口通过。 如果需要指定某个IP/IP段只从某个/多个指定的接口通过,那么就需要用到路由标记功能。
这次我是ROS接了软路由LEDE,因为需要使用LEDE的koolproxy插件去电视盒的广告,但是不想改变现有网络的结构。所以想到ROS使用VPN拨号到LEDE的PPTP服务器,然后标记内网电视盒的IP走LEDE,从而达到去广告的目的。
设置方法:
1、LEDE创建PPTP服务器
2、PPP,点击 + 按钮,选择“PPTP Client”,“Connect To”填写LEDE的wan口ip

最近在玩mikrotik RouterOS(以下简称ROS),这是我比较喜欢的一款路由软件,性能和功能比较强大。
ROS升级:
1、去官网下载升级包,根据自己的设备下载对应的升级文件main package,比如我这边使用是别人的虚拟机打包破解版本(如图:可以看到当前版本是ROS 5.18,插件也是5.18),所以应该下载x86的main package,还有需要下载对应的插件包Extra packages。
官网地址: https://mikrotik.com/download(建议:如果想使用ROS,请支持正版)

大部分软路由网口是偏少的,一般也就3~4个网口,所以如果多条物理ADSL线路,RouterOS(以下简称ROS)需要用到web网管型交换机来扩展WAN。
这边以4条ADSL,8口web网管型交换机,以及4口ROS软路由为测试环境。
详细设置:
1、首先在Web网管型交换机4个网口设置VLAN_ID:10,20,30,40,还有设置一个trunk口连接到软路由ether1上
2、创建VLAN,Winbox --> Interfaces --> Interface,重命名ether1为WAN,Interfaces -->VLAN,新建4个VLAN:VLAN10,VLAN20,VLAN30,VLAN40。
我前面有文章《RouterOS利用DNSPOD的API接口实现DDNS动态解析》写过通过PHP服务器更新DNSPOD解析的域名IP,但是更多的是带来安全问题,所有这次写了一个RouterOS(以下简称ROS)的原生脚本来实现域名的动态解析。
版本说明
1、最低版本支持RouterOS v6.43,低于这个版本的要么升级,要么还是使用第三方服务器来动态解析。
2、不存在的记录,不会自动添加,需要手动在DNSPOD添加记录,线路为默认,不支持单记录多线路解析。为什么不加自动了添加域名之类的,因为一次添加永久有效,所以脚本中不添加自动了。节省ROS性能(我懒)
3、只支持IPv4,不支持IPv6
本文主要讲解如何借助DNSPOD的API接口来实现RouterOS的DDNS动态解析。
一、创建Token添加域名
首先域名要在DNSPOD解析,然后在DNSPOD后台开启的API Token。
详细开通API Token教程:https://support.dnspod.cn/Kb/showarticle/tsid/227/

单线多拨/一线多拨需要运营商的支持,可以达到叠加速度(也要运营商支持)以及获取多个IP地址的目的。
RouterOS(以下简称ROS)可以通过VRRP显示PPPOE多拨,本文虚拟机虚拟ROS以及自建PPPoE服务器,WAN口是ether1,LAN口是ether2,来实现1线3拨以及使用PCC规则来达到负载均衡的效果。
一、VRRP设置
1、打开“Interfaces” - “VRRP”,点击“+”
2、添加3个VRRP,name分别为vrrp1,vrrp2,vrrp3
3、VRRP选项卡分别设置vrrp1的VRID为1, vrrp2的VRID为2, vrrp3的VRID为3

本教程主要介绍 RouterOS(以下简称ROS)多IP(多拨或者多宽带)使用src-nat上网,并指定内网的IP通过指定线路上网。
平时的教程都是masquerade伪装上网,所以这次星知苑出品的这个教程使用的是src-nat上网,主要是因为src-nat的效率比masquerade的高。
本教程不适合初学者,过程中很多步骤略过怎么配置,初学者请先学习ROS基本配置再过来查看本教程。
一、环境介绍
1、ESXi6.5虚拟机虚拟ROS、Win7和WinXP
2、ROS多网卡,分别连接2个外网WAN1和WAN2,内网LAN连接Win7和WinXP

无意中发现江苏(苏州)电信的原生IPv6改为有状态的IPv6,那么我使用的RouterOS软路由(以下简称ROS)就可以获取到IPv6的地址了,所以又可以折腾了一波。
一、IPv6介绍
1、IPv6的地址共有128位,也就是IPv6地址总量一共有2的128次方个地址。/32、/48是IPv6地址的一种表示方式,表示IPv6地址的一个整块,也可以理解为是一个完整的IPv6地址池。在计算IPv6地址数量的时候,/32的IPv6地址数量是2的(128-32)次方个地址,也就是2的96次方个地址。/48的IPv6地址数量是2的(128-48)次方个地址,也就是2的80次方个地址。同理,/64的IPv6地址数量是2的(128-64)次方,也就是64次方个地址。我这里分配到的是/56前缀的IPv6地址池。

很多人认为RouterOS(以下简称ROS)学起来很难,但是其实不然,ROS难在脚本,其他的都是可以通过Winbox可视化操作。如果单单是通过PPPoE拨号上网,那就很容易了。
一、前期准备
1、ROS、光猫和电脑连入同一局域网
2、ROS 6.47.9版本(long-term)
3、Winbox客户端。
二、使用Winbox
1、打开Winbox,点击Neighbors选项卡,可以找到ROS的MAC和IP等信息(如果未找到ROS,点击Refresh刷新列表)。点击MAC地址,使用MAC地址连接,点击IP使用IP连接,点击后会直接显示在Connect to上,Login填入默认账号admin,Password默认为空,点击Connect,就可以进入ROS控制台了。