Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php ftp_connect()不返回资源id_Php_Ftp - Fatal编程技术网

Php ftp_connect()不返回资源id

Php ftp_connect()不返回资源id,php,ftp,Php,Ftp,突然,当我在服务器上执行此操作时: <?php $connection = ftp_connect("ftpserver"); // connect to server print($connection);print("test");die(); ?> 它是服务器配置吗?最近该服务器上没有任何更改。 它只打印“test”,没有空值或其他内容。我尝试了多个ftp服务器,以确保服务器IP不被禁止 已尝试功能\u存在('ftp\u connect'),它已存在 更新:检查/var/l

突然,当我在服务器上执行此操作时:

<?php 
$connection = ftp_connect("ftpserver"); // connect to server
print($connection);print("test");die();
?>
它是服务器配置吗?最近该服务器上没有任何更改。 它只打印“test”,没有空值或其他内容。我尝试了多个ftp服务器,以确保服务器IP不被禁止

已尝试
功能\u存在('ftp\u connect')
,它已存在

更新:检查/var/log/syslog以查看它是否被防火墙阻止。

如果连接失败,则返回
false

打印
false
不会产生任何结果(将
false
转换为空字符串)

使用
var\u dump($connection)
进行验证

您很可能会得到:

bool(假)
这意味着您无法连接到“ftpserver”


ftp\u connect
应该会发出一个警告,并提供有关连接问题的详细信息。

您得到的不是
Resource id
,而是什么?@MartinHieden nothing,它只是打印测试。启用错误报告。@CodeCaster已经启用,没有任何内容。如果没有更多信息,我们无法对此进行说明。尝试启用日志记录或其他方法来找出实际错误。我的猜测是,此服务器不支持被动连接,希望客户端通过侦听端口并将端口号发送到服务器来启动数据连接,但由于权限或防火墙规则而失败。是的,它输出false。在成功连接到同一ftp服务器(相同代码)的其他服务器上,它输出null。如果不能输出null,它应该输出类似“资源(4)类型(ftp缓冲区)”的内容。连接很可能被防火墙阻止。检查是否可以从同一服务器通过命令行进行FTP。是的,我将检查防火墙,如果我从命令行尝试任何FTP服务器,我得到的结果都是错误的是,它拒绝了/var/log/syslog中的每个出站连接,应该先检查一下