coderstephen / robo-ftp
此包已被废弃,不再维护。未建议替代包。
Robo的FTP(S)任务
v0.1.2
2015-02-16 16:33 UTC
Requires
- php: >=5.4.0
- dg/ftp-php: ~1.1
- symfony/finder: ~2.6
This package is not auto-updated.
Last update: 2020-03-02 04:30:12 UTC
README
这是一个简单的任务,用于Robo任务运行器,通过FTP将文件部署到远程服务器。如果您没有SSH访问权限,或者在需要更好的平台独立性时,这个任务非常有用。
安装
将此包添加到您的依赖列表中
composer require --dev coderstephen/robo-ftp
此任务使用dg/ftp-php
建立FTP连接,它是内置FTP PHP扩展的一个薄包装器。大多数PHP安装都编译了这个扩展,所以这个任务应该可以在几乎任何有PHP解释器的环境中运行。
用法
只需在您的RoboFile.php
文件中包含FtpDepoly
特性,然后使用$this->taskFtpDeploy()
运行FTP部署任务。
class RoboFile extends \Robo\Tasks { use RoboFtp\FtpDeploy; function deploy() { $ftp = $this->taskFtpDeploy('host', 'user', 'password') ->dir('/') ->from('.') ->exclude('build') ->exclude('cache') ->skipSizeEqual() ->skipUnmodified() ->run(); } }
SSL支持
此任务默认支持通过SSL使用FTP。您需要SSL扩展才能使其工作,这在Windows上并不总是可用。如果您想禁用任务的SSL,可以使用secure()
方法。
class RoboFile extends \Robo\Tasks { use RoboFtp\FtpDeploy; function deploy() { $ftp = $this->taskFtpDeploy('host', 'user', 'password') ->dir('wwwroot') ->from('public') ->secure(false) ->run(); } }
请注意,一些Windows服务器可能不正确地支持FTP/S,并且在通过SSL上传文件时可能会出错。Microsoft已为这个错误提供了热修复,但默认情况下并未分发。更多信息请参阅这里。