php - 需要有关 Mikrotik PHP API 的帮助
问题描述
目前我正在开发一个为 ISP 开发的 Web 应用程序。我正在使用 Mikrotik PHP API 创建防火墙连接日志。我将所有条目添加到 MySql 数据库中。当我在笔记本电脑上基于 Windows 的 XAMPP 服务器上使用此脚本时一切正常,但是当我上传 Ubuntu 的此脚本时,它会显示
“此页面无法正常工作”... HTTP 错误 500...
其他$API->write();
运行良好但此命令不起作用的命令:
$API->comm("/ip/firewall/connection/print");
我在我的服务器机器上使用 Ubuntu 16.4。上面提到的命令在 XAMPP (Windows) 中工作,但在 LAMP (Ubuntu 16.4) 中不工作。
完整代码在这里:
<?php
include_once('key.php');
$mikrotik_ip = $ip;
$mikrotik_username = $user;
$mikrotik_password = $pass;
if ($API->connect($mikrotik_ip, $mikrotik_username,$mikrotik_password)) {
$log = $API->comm("/ip/firewall/connection/print");
$clog = count($log);
for($a=0;$a<=$clog;$a++){
$state = isset($log[$a]['tcp-state']) ? $log[$a]['tcp-state'] : '';
$src = $log[$a]['src-address'];
$src_rep = $log[$a]['reply-src-address'];
$dst = $log[$a]['dst-address'];
$dst_rep = $log[$a]['reply-dst-address'];
$prot = $log[$a]['protocol'];
mysqli_query($connect,"insert into cts(cts_id,src_address,reply_src_address,dst_address,reply_dst_address,protocol,tcp_state,date) values('','$src','$src_rep','$dst','$dst_rep','$prot','$state','".date("Y-m-d H:i:s")."')") or die(mysqli_error());
}
mysqli_close($connect);
}else{
echo 'Not Connected';
}
?>
解决方案
推荐阅读
- html - 在最后一次出现类之后和使用 CSS 的特定类之前选择元素
- wix - 使用属性值的 WIX 自定义操作条件不起作用
- amazon-dynamodb - dynamodb 我需要多少读取容量单位
- ruby-on-rails - 需要帮助来建立模型之间的正确关联
- solidity - 如何正确将 SafeMath.sol 导入合约
- r - Smote - 选择 Perc_under 和 Perc_Over
- python - AttributError:“模块”没有属性
- mysql - 在 MYSQL 中如何用减法更新 GROUP BY
- asp.net-core - ClaimTypes.NameIdentifier 与 Microsoft GraphApi 用户 ID 有何关系
- google-cloud-platform - 是否可以仅在 GCP 上首次启动时运行启动脚本?