核心是将本地完整PHP项目通过SFTP安全传至服务器Web根目录,并正确设置权限与属主。需先确认PHP及Web服务运行状态、根目录路径;再用FileZilla或scp上传;最后执行chown和chmod确保www-data可读写,目录755、文件644。

用SFTP上传PHP平台到服务器,核心是把本地完整的PHP项目文件(含index.php、config/、vendor/等)安全传到服务器的Web可访问目录,并确保权限和路径正确。整个过程不依赖网页表单或PHP脚本上传,而是通过SSH底层协议直接传输文件,稳定且适合生产部署。
确认目标服务器环境和根目录
上传前必须知道服务器是否支持PHP运行,以及Web服务(Apache/Nginx)实际读取的根目录在哪:
- 登录服务器执行 php -v 查看PHP是否就绪;执行 systemctl status apache2 或 systemctl status nginx 确认Web服务正在运行
- 查Apache默认根目录:通常是 /var/www/html;Nginx需查看 /etc/nginx/sites-enabled/ 下配置里的 root 指令,例如 root /data/www;
- 确保你有对该目录的写入权限,如无,可临时用 sudo chown -R $USER:$USER /var/www/html 调整(后续再改回www-data)
用FileZilla或WinSCP建立SFTP连接
图形化工具最直观,适合大多数用户:
- 打开FileZilla → “站点管理器” → 新建站点,协议选 SFTP-SSH文件传输协议,主机填服务器IP或域名,端口填 22
- 登录类型选“正常”,输入服务器用户名和密码(若用密钥,则选“密钥文件”,并指定私钥路径)
- 连接成功后,右侧窗口显示服务器目录,导航到Web根目录(如 /var/www/html 或 /home/username/public_html)
- 左侧定位你的PHP平台本地文件夹,全选 → 拖拽到右侧目标目录即可上传(支持断点续传,大项目也稳)
用scp命令行快速上传(推荐Linux/macOS)
适合熟悉终端的用户,一条命令完成整个目录推送:
- 在本地终端执行:scp -r ./my-php-platform user@192.168.1.100:/var/www/html/(将本地my-php-platform文件夹完整传到服务器根目录)
- 若要覆盖已有内容并保留结构,确保目标路径末尾有斜杠 /;否则会把整个文件夹当成子目录嵌套进去
- 上传完成后,SSH登录服务器,用 ls -la /var/www/html 检查文件是否齐全,特别注意 index.php 是否在顶层
上传后必须做的三件事
仅传文件不够,PHP平台要跑起来,还需基础配置收尾:
- 改属主:执行 sudo chown -R www-data:www-data /var/www/html(Ubuntu/Debian)或 sudo chown -R apache:apache /var/www/html(CentOS/RHEL)
- 设权限:目录设为755(find /var/www/html -type d -exec chmod 755 {} \;),文件设为644(find /var/www/html -type f -exec chmod 644 {} \;)
- 检查入口和重写:确认浏览器访问 http://你的域名/ 能加载首页;若用Laravel、ThinkPHP等框架,还需确认 .htaccess(Apache)或 nginx.conf 中的重写规则已适配
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











