说明:之前老有人问博主除了FTP
还有啥方法能把本地文件上传到VPS
服务器,这里就分享个工具jQuery-File-Upload
,一个文件上传工具,该工具可以上传任何文件,支持在线预览视频,上传后也可以在线删除等等,很方便,而且个人觉得上传比FTP
要稳。由于原文件样式很不好看,所以博主就找前端大佬Zero博主帮忙进行精简和美化了下,也小小的适配了手机端。
截图
下载
为了考虑国内服务器的加载速度,该源码所有资源都本地化了,所以体积比简化前还大。
使用
环境要求:Nginx/Apache
、PHP
1、直接使用
如果你自己有建站环境,直接将源码丢进网站根目录,再给予server/php/files
目录可写入权限即可。上传后的文件保存在server/php/files
文件夹,相关上传配置可在server/php/UploadHandler.php
里修改。
2、Docker安装
如果你只是单纯的想上传文件,这里博主就制作了个Docker
镜像,很快就装好了。
安装Docker
:
#CentOS 6
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on
#CentOS 7、Debian、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
安装jQuery-File-Upload
:
docker run --name upload -d -p 6800:80 -v /home:/var/www/server/php/files moerats/jquery-file-upload:latest
#参数说明
-p 6800:80 前面的6800为容器映射到外部的端口,等于你访问ip:6800就等于访问程序,可自行修改
-v /home:/var/www/server/php/files 将程序里上传的文件映射到服务器的/home文件夹,可自行修改
完成后我们可以通过ip:6800
访问程序,并上传文件至/home
文件夹。
注意我们需要给映射的文件夹777
权限,不然会上传失败。
chmod 777 /home
部分CentOS
系统可能需要开启防火墙端口,不然会打不开。
#CentOS 6
iptables -I INPUT -p tcp --dport 6800 -j ACCEPT
service iptables save
service iptables restart
#CentOS 7
firewall-cmd --zone=public --add-port=6800/tcp --permanent
firewall-cmd --reload
总结
该程序配合无上传功能的H5ai
、DirectoryLister
目录索引一起使用挺不错的。特别是Docker
可以直接将上传目录映射到具体的文件夹,有兴趣的可以玩玩。
如果你服务器空间很大,需要分批上传多个文件夹,可以多开几个Docker
容器,比如分批传到/home
和/rats
文件夹,可分别运行命令
#记得--name参数和-p端口映射得不一样
docker run --name Linux -d -p 6800:80 -v /home:/var/www/server/php/files moerats/jquery-file-upload:latest
docker run --name Win -d -p 6877:80 -v /rats:/var/www/server/php/files moerats/jquery-file-upload:latest
这时候可以分别访问ip:6800
和ip:6877
上传到/home
和/rats
文件夹了。