Skip to content

Flysystem Adapter for the FTP with cURL implementation

License

Notifications You must be signed in to change notification settings

vyuldashev/flysystem-curlftp

Repository files navigation

Flysystem Adapter for the FTP with cURL implementation

Latest Stable Version Build Status StyleCI License

This package contains a Flysystem FTP adapter with cURL implementation. It supports both explicit and implicit SSL connections.

Installation

You can install the package via composer:

composer require vladimir-yuldashev/flysystem-curlftp

Usage

use League\Flysystem\Filesystem;
use VladimirYuldashev\Flysystem\CurlFtpAdapter;

$adapter = new CurlFtpAdapter([
  'host' => 'ftp.example.com',
  'username' => 'username',
  'password' => 'password',

  /** optional config settings */
  'port' => 21,
  'root' => '/path/to/root',
  'utf8' => true,
  'ftps' => true, // use ftps:// with implicit TLS or ftp:// with explicit TLS
  'ssl' => true,
  'timeout' => 90, // connect timeout
  'passive' => true, // default use PASV mode
  'skipPasvIp' => true, // ignore the IP address in the PASV response 
  'sslVerifyPeer' => 0, // using 0 is insecure, use it only if you know what you're doing
  'sslVerifyHost' => 0, // using 0 is insecure, use it only if you know what you're doing
  'enableTimestampsOnUnixListings' => true,
  
  /** proxy settings */
  'proxyHost' => 'proxy-server.example.com',
  'proxyPort' => 80,
  'proxyUsername' => 'proxyuser',
  'proxyPassword' => 'proxypassword',
  
  'verbose' => false // set verbose mode on/off 
]);

$filesystem = new Filesystem($adapter);

Testing

$ composer test

License

The MIT License (MIT). Please see License File for more information.