【发布时间】:2021-05-17 15:48:12
【问题描述】:
我想问一下我在 codeigneter 中的 fsockopen() 缺少什么或有什么问题。我ve been searching for fives days now and I couldnt 弄清楚出了什么问题,因为其他人遇到了与我相同的错误,我们处于不同的情况。虽然它们用于发送电子邮件,但我是在线或离线获取服务器状态。
我一直在创建一个在线游戏 Web 模板,它可以从游戏远程服务器获取/显示数据到虚拟主机。我能够将 MSSQL 连接到远程服务器,但 fsockeopne() 不起作用。
Helper.php 代码
function getServerConnection($ip, $port) {
$sockres = @fsockopen($ip, $port, $errno, $errstr, 0.01);
if (!$sockres) {
return '<b class="text-danger">OFFLINE</b>';
} else {
@fclose($sockres);
return '<b class="text-success">ONLINE</b>';
}
}
查看代码
<p class="m-b-10">
<span class="left">LOGIN: <?php echo getServerConnection($server_settings->server_ip, $server_settings->login_port) ?></span>
<span class="float-right">WORLD: <?php echo getServerConnection($server_settings->server_ip, $server_settings->server_port) ?></span></p>
Var_dum $sockres 和错误
遇到 PHP 错误 严重性:警告消息:fsockopen(): 无法连接到 192.168.1.1:80(连接超时) - 只是 虚拟 IP。它有一个真正的远程 IP 文件名: helpers/myhelper_helper.php
bool(false) int(110) string(20) "连接超时"
allow_url_fopen = on 和远程服务器防火墙 已配置
提前谢谢你 :) 抱歉我的英语不太好。
【问题讨论】:
标签: codeigniter-3 remote-server fsockopen