2011-07-05 73 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