FTP Deployment Automation
Automate FTP deployments with SENDR. Stop uploading files by hand and let SENDR ship your build to any FTP server on every push.
What is FTP deployment?
FTP (File Transfer Protocol) is the oldest way to publish a website. You connect a client like FileZilla to your hosting account, navigate to the document root, and copy files across. Millions of shared hosts still expose FTP, which makes it the most common deployment surface for static sites and PHP applications.
The problem with manual FTP uploads
Manual uploads are slow and error prone. You have to remember which files changed, you risk partially uploaded directories if a transfer is interrupted, and there is no clean way to roll back when something breaks. Visitors can land on a half-written page mid-deploy.
- No version history: you cannot tell which build is live.
- No atomic swap: the site is inconsistent for the whole upload.
- No rollback: fixing a bad deploy means re-uploading the old files by hand.
How SENDR handles FTP
SENDR connects to your FTP server, uploads the built artifact to a release directory, and then renames it into place. On servers that support server-side renames, this gives you an atomic cutover with zero downtime. Where the server only allows file-by-file writes, SENDR still uploads deterministically and validates the result before marking the release live.
Configure an FTP target
sendr init
# Open the dashboard, add a target:
# name: Production FTP
# type: ftp
# host: ftp.yourhost.com
# deployPath: /public_htmlDeploy with FTP
sendr deploy --waitRollbacks on FTP
SENDR keeps previous releases. A rollback re-points the live directory back to the last known-good build, so you recover in one action instead of re-uploading files manually. Keep in mind that plain FTP cannot do symlink swaps, so rollback on FTP renames directories rather than flipping a symlink.
Troubleshooting
- Permission denied: confirm the FTP user can write to deployPath.
- Partial uploads: SENDR validates the release before going live; re-run sendr deploy.
- Passive mode timeouts: most shared hosts require passive mode, which SENDR enables by default.