繁体   English   中英

PHP:为什么'filetype()'和'is_file()'无法读取FTP服务器上的文件?

[英]PHP: Why would 'filetype()' and 'is_file()' fail reading a file on a FTP server?

尝试检查FTP服务器上的文件时遇到一些问题。

我在测试机上安装了FTP服务器(filezilla),可以从局域网上运行的另一台Web服务器与它进行交互。 我使用PHP在LAN上遍历FTP服务器上的目录。 在我的应用程序中,我调用了“ filetype()”,最近又调用了“ is_file()”以检查文件类型等。

现在,我已经将应用程序部署到了另一个地方,并在NAS上设置了FTP共享,并在连接到LAN的单独的网络服务器上运行了我的应用程序,这就是问题的开始。 我的应用程序现在在“ filetype()”和“ is_file()”调用中失败。 我已将NAS上的FTP共享设置为读/写。

'is_file()'=静音,未报告错误。

'filetype()'=警告:filetype()[function.filetype]: ftp://192.168.0.36/PDFs/6008300/6008386/v1/6008386.pdf在C:\\ Program Files \\ Apache Software Foundation \\中无法用于ftp://192.168.0.36/PDFs/6008300/6008386/v1/6008386.pdf第326行的Apache2.2 \\ htdocs \\ app \\ app.php

有什么想法吗?

我可以通过不使用上述函数来解决此错误,但这会降低此脚本的安全性。

编辑:

PHP是版本5.2.4

FTP服务器不需要任何登录用户名或密码。

is_file()filetype()函数需要相关协议包装程序的 “ stat()”支持。

对于FTP / FTPS, PHP4中缺少此功能,但PHP5中支持

您是否已将其部署在基于PHP4的服务器上?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM