【发布时间】:2018-03-07 04:13:29
【问题描述】:
以下是我将文件上传到其他服务器的代码,
$ftp_server="host";
$ftp_user_name="";
$ftp_user_pass="";
$file = "referesh.php";//tobe uploaded
$name = "diff_adtaggeneration";
$remote_file = $name."/referesh.php";
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
$res = ftp_rawlist($conn_id, $name);
//print_r($_SERVER);exit;
if(count($res) > 0)
{
ftp_put($conn_id, $remote_file, $file, FTP_ASCII);
}
else
{
ftp_mkdir($conn_id, $name);
ftp_put($conn_id, $remote_file, $file, FTP_ASCII);
}
ftp_close($conn_id);
上面的代码完美运行,文件成功上传到其他服务器,新文件夹名称'diff_adtaggeneration'将在目录的根目录和上传到该文件夹的文件中创建,我需要获取上传的文件路径..!我使用 print_r($_SERVER) ,我知道这仅显示当前服务器详细信息,但如何获取上传服务器(其他服务器)的根目录完整文件路径。任何帮助表示赞赏...
【问题讨论】:
-
您需要做类似
'/var/www/html/'.dirname($remote_file)之类的事情,因为您无法从 ftp 获取绝对路径。 -
查看ftp_pwd,但它可能与 FTP 根目录有关。服务器可能会也可能不会公开远程目录的真实完整路径,在这种情况下,您只需要知道它。
-
如果文件上传到该服务器,我需要在该服务器上运行该上传文件
-
是否可以运行上传的文件?
-
你说的“运行”是什么意思?这太模糊了。是否要在浏览器中打开文件(=将浏览器重定向到该服务器和脚本)?