[PHP-users 30820] ftp_pwdができてftp_rawlistができません
Hiroyuki Nakane
hn-biz @ zc.wakwak.com
2006年 11月 29日 (水) 01:40:44 JST
いつも参考にさせていただいております。
当MLやGoogleで同様の質問が無いか調べましたが見当たりませんで
したので質問させていただきます。
FTP関数につきまして教えていただきたく、宜しくお願い致します。
さくらインターネットでサーバ借りています。アクセスログが取得
できるので、社内のサーバよりPHPのFTP関数を利用して、自動的に
そのアクセスログを取得しようとしております。
FTP接続はうまくいっているようなのですが、ftp_rawlist と
ftp_get がうまくいきません。なぜなのでしょうか?
社内サーバのPHPコード
-----------------------------------------ここから
// FTPサーバーに接続
$ftp_handle = ftp_connect ( $ftp_host ) or exit ( "Failed" );
// ログイン
if ( ftp_login ( $ftp_handle, $ftp_user, $ftp_pass ) ) {
// ディレクトリを移動
ftp_chdir ( $ftp_handle, $dir );
// ファイルリスト取得
$filelist = ftp_rawlist ( $ftp_handle, '.' );
// 表示
print "ディレクトリ" . ftp_pwd ( $ftp_handle ) . "のリスト\n\n"; //---(1)
foreach ( $filelist as $value ) {
print $value . "\n"; //---(2)
}
ftp_get ( $ftp_handle, "/home/hoge/newfilename.gz",
"access_log_20061120.gz", FTP_ASCII ); //---(3)
var_dump ( $filelist ); //---(4)
}
// 切断
ftp_close ( $ftp_handle );
-----------------------------------------ここまで
上記を実行して(1)は、正しくディレクトリ名が表示されます。
従って ftp_pwd はうまくいっていると理解しております。
しかし、(2)および(3)は表示されません。
(4)は 'bool(false)' が表示されます。
実行環境
-----------------------------------------ここから
TurboLinux7Server
Apache 1.3.27-33
PHP 4.4.4
PHPINFOより
↓Configure Command欄の表示
./configure
--with-apxs=/usr/sbin/apxs
--without-mysql
--enable-mbstring
--enable-mbregex
--enable-ftp
--enable-magic-quotes
↓FTPの部分
FTP support enabled
-----------------------------------------ここまで
その他
さくらサーバのログファイルのパーミッション=644
WindowsPCのFFFTP(FTPクライアントソフトです)からは、同じ
ユーザー名、パスワードで問題のファイルを取得できております。
従いましてユーザ名、パスワードは正しいです。
何卒宜しくお願い致します。
中根浩之
PHP-users メーリングリストの案内