2011-07-05 107 views
2

我刚刚将一个网站转移到了新的服务器上,并且出现了一个奇怪的问题。在所有包含PHP include命令的页面上,该文件停止上传,并截断了该行的所有内容。不仅在执行时,而且在通过FTP上传文件时。我可以删除include命令,它会上传完整的4KB页面,但使用它,页面只会在命令前上传1KB。是什么赋予了?PHP包含从上传文件中停止的文件

allow_url_include已打开,包含的文件只是基本的HTML,并且它在旧服务器上运行正常......我之前从未因为代码中的问题而无法上载文件。有任何想法吗?

回答

1

这可能是托管公司的安全措施。 这是一种常见的攻击媒介,用于蛮力FTP密码,然后将PHP脚本添加/修改为include()来自另一台受感染服务器的恶意代码。

我会联系托管公司,并要求他们。他们可能必须降低他们的安全性,将您的IP地址添加到白名单,或者提供另一种上传文件的方法(例如SSH/SFTP)。

如果您无法联系系统管理员并获得SSH访问权限,请尝试通过SFTP连接并重新上传。

+0

我给他们发了电子邮件,但他们说他们没有安全措施来防止这种情况发生。 – James

+0

您的计算机上是否运行了本地防火墙/安全软件?如果它肯定是停止文件传输的'include()'命令,那么你的FTP客户端和服务器之间就会有一些调皮的东西。 – Tak