FTP(文件传输协议)是将文件上传到主机服务器的标准方法。它非常适合传输大量文件或整个目录,而DirectAdmin的文件管理器可能会很慢或不方便。FileZilla是最流行的免费FTP客户端,支持Windows、macOS和Linux。
下载并安装FileZilla
从filezilla-project.org下载FileZilla客户端(不是服务器端)。选择适合您操作系统的版本并正常安装——完全免费。
在DirectAdmin中查找您的FTP凭据
连接前,您需要四条信息。在您的主机欢迎邮件或DirectAdmin中查找:
- 主机 / FTP服务器 — 例如
ftp.yourdomain.com或服务器的IP地址 - 用户名 — 您的主机用户名(通常与DirectAdmin登录名相同)
- 密码 — 您的主机密码
- 端口 — 通常是
21(FTP)或22(SFTP)
在DirectAdmin中创建独立FTP账户
要给开发者提供只访问特定文件夹的权限,请创建独立FTP账户:DirectAdmin → FTP管理 → 创建FTP账户。设置路径以限制对指定文件夹的访问。
首次连接FileZilla
方法1 — 快速连接(快速)
在FileZilla顶部栏输入详细信息并点击快速连接:
Host: ftp.yourdomain.com
Username: yourusername
Password: yourpassword
Port: 21
方法2 — 站点管理器(推荐 — 保存凭据)
- 打开文件 → 站点管理器(或 Ctrl+S)
- 点击新建站点并命名,例如"AsiaGB Hosting"
- 选择协议:FTP或SFTP(如果支持)
- 输入主机、端口、用户名和密码
- 登录类型:普通(无需每次输入密码)
- 点击连接
SFTP比FTP更安全:SFTP(SSH文件传输协议)加密传输中的所有数据,使用端口22。如果您的主机支持,始终优先使用SFTP而不是普通FTP。
了解文件夹结构
连接后,右侧面板(远程站点)显示您的主机目录结构:
public_html/— 主网络根目录。可通过浏览器访问的文件必须在此处public_html/wp-content/— WordPress主题和插件logs/— 错误日志(请勿修改)private/— 非网络可访问的文件夹;配置文件和备份的安全位置
上传文件
拖放
在左侧面板(本地站点)中,导航到您的本地文件。从左侧面板将文件或文件夹拖放到右侧的目标文件夹中。FileZilla立即开始上传。
上传整个文件夹
- 在左侧面板中导航到文件夹
- 右键点击文件夹 → 上传
- FileZilla将传输所有文件,包括子文件夹
监控队列和传输状态
检查底部面板:排队文件显示待处理的传输,成功传输显示已完成的文件,失败传输列出错误(右键点击 → 重试以重新尝试)。
常见问题
连接超时 / ECONNREFUSED
- 验证主机名是否正确(如果DNS尚未传播,请使用服务器IP)
- 检查本地防火墙是否阻止了端口21
- 尝试将传输模式切换为被动:编辑 → 设置 → 连接 → FTP → 被动模式
上传时权限被拒绝
- 确认FTP用户对目标文件夹有写入权限
- 如果使用独立FTP账户,检查DirectAdmin中设置的home路径
FileZilla中看不到.htaccess文件
以.开头的文件默认隐藏。在FileZilla中修复此问题:服务器 → 强制显示隐藏文件。
FTP的替代方案:DirectAdmin包含用于快速单文件编辑的文件管理器,并支持开发者通过SSH进行Git部署——请参阅我们关于主机上的Git部署的文章。
SFTP与FTP:了解安全差异
许多用户将FTP和SFTP视为可互换的——但每个网络开发者都应该了解一些重要差异:
| 功能 | FTP(端口21) | SFTP(端口22) |
|---|---|---|
| 加密 | 无 | 完整SSH加密 |
| 密码安全 | 以明文发送(有风险) | 全程加密 |
| 防火墙友好性 | 主动模式可能引起问题 | 单端口,无问题 |
| 速度 | 稍快 | 稍慢(加密开销) |
| 推荐用于 | 仅限遗留系统 | 所有情况,尤其是生产环境 |
所有AsiaGB主机方案都支持端口22上的SFTP。只需更改FileZilla站点管理器中的协议设置即可从普通FTP切换——无需额外配置。
高级:通过命令行上传
对于想要自动化部署而不使用图形界面的开发者或团队,命令行工具提供了强大的替代方案:
使用curl上传单个文件
# Upload a file via FTP
curl -T index.html "ftp://ftp.yourdomain.com/public_html/" \
--user "yourusername:yourpassword"
# For SFTP, use rsync or scp instead
使用rsync通过SSH同步整个文件夹
# Sync entire local folder to hosting
rsync -avz --progress ./public/ \
[email protected]:/home/yourusername/public_html/
# Sync only changed files (saves bandwidth)
rsync -avz --checksum ./public/ \
[email protected]:/home/yourusername/public_html/
自动化您的部署:将rsync命令添加到Shell脚本,并从Cron作业或CI/CD管道触发,以便每次向Git存储库推送代码时自动部署。
上传后设置文件权限
正确的文件权限对网站功能和安全性都至关重要。以下是标准权限值:
- 常规文件(.html、.php、.css、.js):权限
644— 所有者可读/写,组和其他人只能读 - 目录:权限
755— 所有者可读/写/执行,组和其他人可读/执行 - 包含凭据的配置文件(config.php):权限
600— 仅所有者 - 可写文件夹(缓存、上传):文件夹本身权限
755或777
在FileZilla中更改权限
在远程站点面板中右键点击任何文件或文件夹 → 文件权限 → 输入数字值并点击确定。勾选递归到子目录以将权限应用于整个目录树。
# Change permissions via SSH command line
find /home/yourusername/public_html -type f -exec chmod 644 {} \;
find /home/yourusername/public_html -type d -exec chmod 755 {} \;