【发布时间】:2012-06-18 00:07:35
【问题描述】:
我们在一个由数据库驱动的 CI 应用程序上维护 70 多个房地产网站(实际上,一个数据库和应用程序用于生产站点,一个数据库和应用程序用于开发站点),以便为每个站点提供必要的差异。我们提供定制的 CMS,以便物业经理可以定期更新他们的网站。有一个批准流程可以通过 CMS 将对其开发站点所做的更改推送到其生产站点。
CMS 的一个功能是上传相册。专辑上传到开发并批准生产后,我需要将此文件夹从开发资产复制到他们的生产资产。
我建立 FTP 连接并使用以下方法创建相册文件夹没有问题:
$this->ftp->mkdir($path['ftpP'].'photoAlbums/'.$album[0]['albumFolderName'].'/', DIR_WRITE_MODE);
($path['ftpP'] 看起来像这样:/httpdocs/edrAssets/propsP/700/
当我尝试在 FTP 类中使用镜像功能时,我没有收到任何错误或警告,但我也没有收到任何传输 - 什么都没有。
代码如下:
$dLink = $path['ftpD'].'photoAlbums/'.$album[0]['albumFolderName'].'/';
$pLink = $path['ftpP'].'photoAlbums/'.$album[0]['albumFolderName'].'/';
$this->ftp->mirror($dLink, $pLink);
我从星期四晚上开始就一直在努力解决这个问题,需要一些建议。感谢所有帮助。
乔恩
请求的日志文件:
DEBUG - 2012-06-18 07:15:31 --> 控制器类已初始化
DEBUG - 2012-06-18 07:15:31 --> Ftp 类已加载。第二次尝试被忽略。
DEBUG - 2012-06-18 07:15:31 --> 在这里尝试 FTP
错误 - 2012-06-18 07:15:31 --> 严重性:警告 --> opendir() [function.opendir]: 无法访问 /httpdocs/edrAssets/propsD/700/photoAlbums/theUSOpen2012/ / var/www/vhosts/edrpropertyoperations.com/httpdocs/WEBdev/system/libraries/Ftp.php 532
错误 - 2012-06-18 07:15:31 --> 严重性:警告 --> opendir(/httpdocs/edrAssets/propsD/700/photoAlbums/theUSOpen2012/) [function.opendir]: 无法打开目录: 没有这样的文件或目录 /var/www/vhosts/edrpropertyoperations.com/httpdocs/WEBdev/system/libraries/Ftp.php 532
DEBUG - 2012-06-18 07:15:31 --> 最终输出发送到浏览器
DEBUG - 2012-06-18 07:15:31 --> 总执行时间:0.1626
添加 *
public function approved_create_album( $id ){
$thisTask = $this->mcms->getSingleAdminTask( $id );
$album = $this->mcms->getAlbumByID($thisTask[0]['itemID']);
$path = $this->mcms->path_variables( $album[0]['propNumber']);
$this->load->library('ftp');
$ftp['hostname'] = <REMOVED>;
$ftp['username'] = <REMOVED>;
$ftp['password'] = <REMOVED>;
$ftp['port'] = 21;
$ftp['passive'] = FALSE;
$ftp['debug'] = TRUE;
$ftp['ssl_mode'] = FALSE;
$this->ftp->connect($ftp);
$dLink = $path['ftpD'].'photoAlbums/'.$album[0]['albumFolderName'].'/';
$pLink = $path['ftpP'].'photoAlbums/'.$album[0]['albumFolderName'].'/';
if( !file_exists($pLink) && !is_dir($pLink)){
$this->ftp->mkdir($path['ftpP'].'photoAlbums/'.$album[0]['albumFolderName'].'/', DIR_WRITE_MODE);
} // end if
log_message('debug', 'Trying to FTP here');
$this->ftp->mirror($dLink, $pLink);
echo $dLink . " to " . $pLink;
} // end approved_create_album function
【问题讨论】:
标签: codeigniter