fsockopen(): 无法连接到远程服务器 ip Codeigniter

Posted

技术标签:

【中文标题】fsockopen(): 无法连接到远程服务器 ip Codeigniter【英文标题】:fsockopen(): unable to connect to remote server ip Codeigniter 【发布时间】: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 和远程服务器防火墙 已配置

提前谢谢你 :) 抱歉我的英语不太好。

【问题讨论】:

【参考方案1】:

我能够找出这个错误是因为我使用了错误的端口。并确保您正确配置到您的 Windows 防火墙中。并尝试使用这个检查端口https://ping.eu/port-chk/

【讨论】:

以上是关于fsockopen(): 无法连接到远程服务器 ip Codeigniter的主要内容,如果未能解决你的问题,请参考以下文章

PHP fsockopen() 失败,但 telnet 工作

在 Codeigniter 中无法发送电子邮件 - fsockopen():无法连接到 ssl://smtp.gmail.com:465(连接被拒绝)

紧急求助,在传输数据时页面提示无法连接到远程服务器 System.Net.Sockets.SocketException

无法远程连接到服务器怎么回事?

无法连接到远程 rtmp 服务器

WebException:无法连接到远程服务器