PHP: Neden 'filetype ()' ve 'is_file ()', bir FTP sunucusunda bir dosya okuma başarısız olur?

1 Cevap

Bir FTP sunucusu üzerindeki dosyaları kontrol etmek için çalışırken ben birkaç sorun yaşıyorum.

Ben LAN üzerinde çalışan başka bir web sunucusu onunla etkileşim olabilir bir test makinesinde bir FTP sunucusu (filezilla) yüklü. Ben LAN üzerinden FTP sunucusunda dizinlere gezmelerine PHP kullanılır. Benim app içinde i ') (filetype' çağrı vardı ve son zamanlarda 'is_file ()' dosya türlerini vb kontrol etmek

Şimdi bir NAS üzerinde başka bir yere ve kurulumu FTP payı uygulaması dağıtılan ve LAN bağlı ayrı bir web sunucusu üzerinde benim app çalıştırın ve sorunlar başlar nerede burada ettik. Benim app şimdi 'filetype ()' ve 'is_file ()' çağrıları başarısız. Ben okuma / yazma için NAS üzerinde FTP payını belirledik.

'is_file()' = Silent, no error reported.

'filetype()' = Warning: filetype() [function.filetype]: Lstat failed for ftp://192.168.0.36/PDFs/6008300/6008386/v1/6008386.pdf in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\app\app.php on line 326

Herhangi bir düşünce?

Ben yukarıdaki işlevleri kullanarak değil, bu hataya bir çözüm olabilir ama bu script güvenliğini azaltır.

EDIT:

PHP version 5.2.4 olduğunu

FTP sunucusu, herhangi bir oturum açma kullanıcı adı veya şifre gerektirmez.

1 Cevap

is_file() ve filetype() işlevler ilgili protocol wrapper dan "stat ()" destek gerektirir.

FTP / FTPS, this was lacking in PHP4, but is supported in PHP5.

Bir PHP4 tabanlı sunucu üzerinde bu dağıtmış?