php网盘
作者:斯塔克家的真维斯
为你分享有趣有价值的软件技巧与成长生活,点击关注自动推送更多内容
在了解完内外网之后,我们就可以着手搭建各个类型的应用来丰富我们的NAS。(之前的文章可点击头像查看【DIY计划】专栏)
首先是用处比较大的网盘系统(尤其是感受过某某网盘的折磨)。
当然,如果有大容量存储需求,首选还是固态或者机械硬盘。
自己的网盘系统不需要担心空间问题和局域网传输速度问题(内网穿透要单独考虑),可定制化内容多样,多人共享也很方便,对于数据敏感的小伙伴来说也有很好的安全性。
虽然NAS中已经可以通过SMB协议来实现网盘的基本存取功能,但是相比全面的网盘系统还差一个台阶。
这次就从第一个台阶开始走向一个功能全面的NAS。
(该用云盘的地方还是用云盘,搭配才能达到最好的效果)
关于nextcloud
nextcloud是一款开源的网盘系统。个人或者企业都可以用nextcloud构建免费的网盘系统用于打通全平台的文件同步与共享方案。
其实同类的网盘也有很多,比如可道云、seafile等等。但文件的同步与共享只是nextcloud的一部分,更重要的是配套的插件可以大幅度地提升nextcloud的使用体验。
(另外seafile的文件是会进行加密保存的,不可以使用smb协议读取,得到的是密文。)
安装数据库
既然是一款全方位的个人云盘,数据存储当然是重中之重的。所以我们第一步需要做的就是安装数据库。
平时最常见的数据库应该就是MySQL了,这里我们也可以使用MySQL的进化版MariaDB来作为nextcloud的数据库基础。
讲讲异同
这次学习一下使用potainer的stack来安装容器组,也就是docker-compose。(分开装每个容器也是可以的,容器的一般图形化安装方法见docker详解那期)
使用stack可以同时安装多个容器,并且可以将容器纳入同一个网络区域,这样只有在网络区域内的容器可以相互访问,方便一些需要数据库的容器进行严密的联动。
首先需要创建一个网络区域
创建完成后进入stacks,点击add stack
这次我们需要安装MariaDB和数据库的图形管理界面Adminer
创建stack的名字为MariaDB,这里的参数我们参考“一台电脑的NAS之旅”提供的参数。
1.PUID和PGID
还是用我们老方法:id $user查询然后对应,关于linux的权限设置问题后面可以单独说一次。
2.把PASSWORD改为自己的密码
3.volumes
把设置目录对应到/config这个相对路径
4.ports
端口这边可以只留下面的端口8080,mariaDB不需要端口
5.networks
网络设置为我们刚创建的网络区域
6.adminer
adminer这边不需要改什么,把网络对应好就可以
点击部署,等待stack创建
创建好之后可以看到该stack里有两个容器
输入ip地址:8080就可以进入到Adminer的界面了,用户名是root,密码是自己设的密码
登陆后就可以看到数据库了,这里也可以进行数据管理,当然配合外部应用更为方便。
安装nextcloud
docker-compose安装
前面说完了nextcloud的好处,那么这里我们直接安装
首先打开我们的老朋友linuxserver中找到nextcloud的doc
复制下面的docker-compose代码
1.PUID和PGID
先去看一下OMV中的用户名,然后查找该用户名的uid和gid。这里设置错了会出现无权访问的情况,也可以通过OMV给对应用户权限解决。
2.volumes
硬盘中的绝对路径:相对路径,用finalshell查看
比如我的就是设置目录:
/srv/dev-disk-by-uuid-8ef4dd5d-322d-4e8c-b11a-b878ea0ed7c6/myHub/nextcloud/config
数据目录:
/srv/dev-disk-by-uuid-8ef4dd5d-322d-4e8c-b11a-b878ea0ed7c6/myHub/nextcloud/data
点击部署,默认端口号为443
这里如果部署完但是无法登录,可以使用命令行docker安装
创建nextcloud文件夹,在文件夹内创建docker-compose.yml文件
把上面的yml内容复制进去
在该文件夹下运行sudo docker-compose up -d部署
nextcloud登陆
输入ip:443就可以打开了,要注意这里是https,提示不是专用连接
然后进入就可以看到登陆界面了
绑定数据库
下拉点开存储与数据库,这里选择中间的MySQL/MariaDB
这时候我们还没有数据库,需要进入Adminer界面创建数据库
保存后再点击权限,创建用户,给予所有权限
链接数据库
等待片刻成功登录
改为信任链接
如果出现提示为不信任域名,那么进入该路径:
/srv/dev-disk-by-uuid-8ef4dd5d-322d-4e8c-b11a-b878ea0ed7c6/myHub/nextcloud/config/www/nextcloud/config
编辑config.php文件,将受信任域名添加进去:
文件结构
建议把nextcloud安装在共享文件夹,这样方便管理文件。
在data目录就可以看到设定的用户
点开之后的目录结构与网盘上的一致
优化nextcloud
在安装完成后,打开网站的过程中可能会有一点点慢。nextcloud官方也提供了一些优化的方法以提高体验感.
这里我们挑几个比较有效果的说说。
设备后台任务
nextcloud的后台任务有三种执行方式,分别是AJAX,Webcron和Cron。官方推荐使用Cron,这里我们在设置中修改。
再顺手在定时任务中添加cron.php(路径是实际安装路径)
crontab -u www-data -e*/5 * * * * php -f /var/www/nextcloud/cron.php
docker也可以直接
docker exec --user www-data nextcloud_nextcloud_1 php /var/www/html/cron.php
修改缓存
使用内存作为缓存可以提高访问网页的速度。
官方推荐使用APCu和Redis的组合。
这里可以把本地缓存后端改为APCu,分布式缓存后端改为Redis。
打开/www/wwwroot/nextcloud目录/config/config.php
添加
'memcache.local' => 'OCMemcacheAPCu','memcache.distributed' => 'OCMemcacheRedis','redis' => array(
'host' => 'localhost',
'port' => 6379,)
调整PHP-FPM
提高PHP-FPM的运行效率,修改进程数和备用进程数。
打开文件nextcloud/config/php/www2.conf
添加:
[www]
pm = dynamic
pm.max_children = 120
pm.start_servers = 12
pm.min_spare_servers = 6
pm.max_spare_servers = 18
修改到这里对于个人使用基本是足够了,如果主要用于团队协作可以根据官方文档仔细研究一下优化,事半功倍。(优化好速度真的快)
值得拥有的应用
nextcloud更强大的地方在于除了网盘功能,它还拥有着非常丰富的应用库。
日历&邮箱&地图
这些基础应用如果没有在安装时勾选的话,那么需要单独在应用里下载并启用。
都不是很华丽甚至有点简单,但是在你需要的时候也可以用起来。
相册管理
nextcloud对于照片的管理体系可以让你不需要在NAS上下载单独的照片管理工具。同样也有地点和标签功能,照片还可以单独查看
手机相册自动同步
打通手机、电脑、平板直接的数据链路已经不再稀奇。
这里我们可以打开手机端的界面:
而对于手机端来说,自动同步相册这个功能可以说非常好用了。(当然如果是内网穿透同步可能速度有点堪忧)
打开自动上传,这里你可以设置自动同步哪一个文件夹,或者单独新建一个同步文件夹:
自动上传的设置也非常细致:
(主要是看到这个没有限制的网盘空间就很舒服)
PDF viewer&Video player
一开始就默认开启的应用,可以很方便地预览pdf文件和视频。(视频直接可以播放,不用等神奇的进度条)
笔记
点击右上角的用户,在应用这栏可以找到精选应用。添加Notes这个应用就可以进行简单的笔记管理了。
不是非常好用但是可以在需要的时候用一下,还支持markdown,非常舒适。
笔记会自动存放在自动创建的笔记文件夹中。
思维导图
同样在应用这栏我们还可以添加思维导图进去。这款思维导图插件叫做Mind map。点击下载并启用之后就可以在首页创建了。
功能非常前面,甚至还有脑残粉(误),体验来说不比xmind差,完全够用。
流程图
既然有思维导图,那一定不能少了流程图。
在应用中可以找到叫做darw.io的流程图插件。下载并启用之后就可以在首页创建了。
Onlyoffice
这里再推荐一款重磅应用Onlyoffice,可以直接在nextcloud中编辑office三件套,还可以协同编辑。
Onlyoffice是可以直接在服务器上部署的,同时也提供了其他平台的应用。
nextcloud也支持collabora Online,但是相比起来还是Onlyoffice更好用一点。(明目张胆的写在这里)
由于功能比较复杂,Onlyoffice需要现在服务器上安装,再与nextcloud链接才可以使用。
安装Onlyoffice
安装说明官方写的很详细
首先要注意内存和空间要求(一套下载下来也不小)
docker下直接运行
sudo docker run -i -t -d -p 80:80 --restart=always onlyoffice/documentserver
把前面的80端口改为你想映射的端口
再配置路径映射
这时候可以按照官方的设置为https,当然现在已经可以打开了
连接nextcloud
再回到nextcloud,在应用里添加好Onlyoffice,打开设置界面,填写安装后的Onlyoffice地址和端口
然后在首页可以添加新的文档,就可以用Onlyoffice编辑了。
如果自己用就已经够了,想协同编辑的小伙伴可以深入研究一下Onlyoffice的其他功能。
总结
对于nextcloud来说搭建到这个程度已经体验很好了,完全够用,其他的功能后续会有其他更好的应用来查漏补缺。
感谢阅读,下期继续分享!
乔瑞中1027求免费的网盘
广梵楠15115885455 ______ http://www.namipan.com/index.php【纳米盘】 单个文件大小限4GB,不限总空间大小 http://www.gbaopan.com/【G宝盘】 上传文件到1G免费空间永久保存. 将你的文件和家人朋友分享. 在G宝盘搜索你想要的文件. http://www.fileupyours.com/index.php【fileUPYOURS.com】 国外的一个免费永久保存的网盘,文件限制不记得了
乔瑞中1027请问怎样下载PHP -
广梵楠15115885455 ______ 第一步:点后面这个地址:http://cn2.php.net/get/php-5.2.9-2-Win32.zip/from/a/mirror第二步:点国旗下面地址就可以
乔瑞中1027请推荐一个国外免费网盘,支持断点续传上传和下载的.
广梵楠15115885455 ______ Mybloop 总空间无限 单个文件小于100M 不限流量 永久保存(该网盘特别注重这一点,只有用户自己可以删除文件) 支持直接外链(但是avi、real文件未通过引用测试) 有分享页面,可在线播放 上传25K/S,下载140K/S 不支持中文文件名 支...
乔瑞中1027我的网站是php语言的,我申请了华为网盘的直链API接入,也购买?
广梵楠15115885455 ______ 华为网盘API直链接入流程如下: 1.初始化应用和权限 打开浏览器,输入 "/我的网盘/我的应用/PublicFiles"文件夹,同时自动生成直链应用的APPID和APPSECRET. ...
乔瑞中1027介绍几个比较好用的网盘
广梵楠15115885455 ______ 大米盘: http://www.damipan.com/ 最快最稳定的免费网络硬盘,无限空间,永不过期,支持电驴迅雷旋风下载.
乔瑞中1027有更好的免费网盘吗?
广梵楠15115885455 ______ 天下没有免费的午餐.
乔瑞中1027免费网络硬盘 -
广梵楠15115885455 ______ 纳米机器人! -- 纳米盘 a. 免费存储,随时随地访问你的文件 b. 图片外链,和朋友分享照片 上传下载必备--纳米机器人! > 下载,上传速度更快 > 支持http下载并存于纳米盘 > 支持断点续传,安全可靠 >共享空间:GB / 额度:不限 >个人空间:已用: 0 B / 额度: 1GB http://www.namipan.com/index.php
乔瑞中1027最安全的网盘是?最大的网盘是?最快的网盘是?最受欢迎的网盘是?最多人使用的网盘是?最早出的网盘有?现在刚出的网盘有? -
广梵楠15115885455 ______ http://u.115.com/invite/ca962bd5 看了很多其他网盘,最总还是用115了115网络U盘很好用.分享文件、文档、照片、音乐,3G 的永久空间、5G 的临时空间,还可以升级呢!相册,在线听歌,每天还可以免费领取空间哦
乔瑞中1027有没有免费的网盘
广梵楠15115885455 ______ 免费网络硬盘大集合 1.蜂盘100MB (这个没得说!排在第一,本人正在使用中!速度挺快!) 蜂盘系统提供了“我的文件”、“我的共享”、“我的蜂友”、“聚宝箱”四大基础服务包,而基于这四大基础服务包即可构建一个全新的网络应用...
乔瑞中1027求较稳定的网络硬盘
广梵楠15115885455 ______ 1、“纳米盘”:(地址)http://www.namipan.com/index.php 2、VDISK网盘: http://www3.vdisk.cn/vdisk2008/ 3、参考地址: http://www.hao123.com/mail.htm