使用cloudreve搭建私有云

感谢Orange Cheers提供的白嫖服务器!

之前一直想搞一个私有云,正好现在有了第二台免费的服务器,可以自由折腾了。

在比较了多款私有云软件后,我选择了Cloudreve,主要的原因就是它的UI设计十分美观,部署也较为简便。这里有官网提供的演示demo:https://demo.cloudreve.org/

因为已经有过一款Linux的服务器了,这次我就尝试一下Windows的服务器。

服务器系统为Windows Server 2012 R2,本地系统为macOS Catalina。

因为要装的环境太多,我懒得一个一个安装,就直接使用了一个服务器管理面板,介意者可以跳过步骤二,自行安装Apache、MySQL、php。

1. 使用 Microsoft Remote Desktop 连接远程服务器桌面

不得不说微软十分良心,专门为mac用户打造一款远程桌面客户端,不过可惜的是在国区并不提供这款软件,因此我们需要一个美区的Apple ID,(*之后我可能会写一篇如何申请美区Apple ID的文章)登陆App Store,搜索Microsoft Remote Desktop,安装即可。

然后添加一台PC:

在这里输入您的服务器商提供的远程登录用户名(一般为Administrator)和密码:

添加之后点击右上角的编辑,点击Devices & Audio,勾选Clipbroad,这样便可以共享剪贴板,方便以后的代码更改:

【可选】点击Folders可以将本地的一个文件夹映射到远程Windows主机,方便共享文件,不过对传输大文件不是很友好。建议设置一个,之后会用到。

添加之后便可双击连接:

连接后建议下载 Google Chrome 或其他主流浏览器,方便日后的服务器本地调试。

2. 下载并使用 PhPstudy 集成环境

访问www.xp.cn ,下载Windows版本的PhpStudy。

安装完成后打开,在首页启动Apache和MySQL:

*不推荐使用Nginx,如果执意使用,请查询Nginx for cloudreve 的伪静态写法。

点击数据库,首先修改root密码:

8

然后创建一个新的数据库:

点击侧边栏的环境,安装php运行环境:

完成后在浏览器地址栏里输入并打开localhost,如果看到以下页面,则说明环境配置成功。

3. 下载cloudreve

在服务器中访问 https://cloudreve.org/download.php ,下载最新版本的安装包,将其解压在一个合适的地方(路径中最好不要有中文)

4. 配置cloudreve

打开PhPstudy,点击侧边栏中的网站,先将默认的localhost的网站端口改为81(或其他,避免跟80端口冲突),然后点击创建网站。根目录选择cloudreve的解压目录。

然后服务器端的配置基本完成了,切回本地,在本地浏览器中访问您的域名/cloudreveinstaller 进入cloudreve配置页面。正常的话除了最后两项可选的,都是满足的。

如果感觉访问很慢,请关闭您的代理软件

点击下一步,填写信息。

填写完成后开始安装即可。

安装完成后,在本地电脑直接访问您的域名即可来到cloudreve的欢迎界面,点击登录,使用初始管理员账号admin@cloudreve.org,密码admin 登录,点击右上角头像,进入管理面板。

点击用户,更换管理员账号的邮箱及密码,根据自己喜好配置左侧每一项的设置。然后回到首页设置自己的用户头像等等。

至此,cloudreve已经可以投入使用了。

5. 个性化配置

进入解压目录\static\img\,其中的logo_s.png就是欢迎页左上角的图标,备份之后,用自己的替换即可。注意带有透明度,否则会很难看。

5.2 更换欢迎页背景

进入解压目录\static\img\,其中的output.jpg就是欢迎页的背景,备份之后,用自己的替换即可。注意图片大小不要太大,控制在100kb左右,防止加载太长时间。

5.3 更改首页文字信息

进入解压目录\application\index\view\index\,将其中的index.html拷贝后重命名作为备份,然后将index.html放到共享文件夹里(或者使用其他途径传回本地),这是因为Unix的换行符和Windows下的不同,如果直接在Windows下打开,您会发现所有的代码都会挤在一行里,十分难看。

(注:传回本地后可将换行符更改为CRLF,这样之后直接在Windows里打开编辑也可以。)

在本地用文本编辑器打开,找到<div class="fadeInDown" data-wow-delay="0.2s">里面的<h3>标签和<h4>标签就是欢迎页上的大大的文字。修改后放回原文件夹即可。

5.4 添加页脚注释

有时候想要给自己的站点加一点注释,或者悬挂备案号等等,都需要加在页脚。在页脚添加文字可就不像更改原有的文字那么简单了,需要重新规划布局。

5.4.1 实现效果

如图:

5.4.2 实现方式

还是进入解压目录\application\index\view\index\,将其中的index.html再次拷贝后重命名作为备份,打开index.html,将以下CSS代码添加到第一行{include file="header" /}的下面。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<style type="text/css">
.flex-col {
display:-webkit-flex;
display:-ms-flexbox;
display:flex;
-webkit-justify-content:space-between;
-ms-flex-pack:center;
justify-content:space-between;
-webkit-align-items:center;
-ms-flex-align:center;
align-items:center;
height:100%;
flex-direction: column;
-webkit-flex-direction: column;
}
</style>

然后在<div class="full-bg-img flex-col"><div class="container smooth-scroll">这两行之间,加入<div></div>,即:

1
2
3
4
<div class="hm-gradient">
<div class="full-bg-img flex-col">
<div></div>
......

然后在<div class="container smooth-scroll">所对应的</div>的下面,插入:

1
<h6 style="color: white">这里填写您想展示的文字</h6>

即可。

5.4.3 原理

使用了flex布局。

2009年,W3C 提出了网页布局的一种新方案——Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。

*请加入-webkit-前缀以便在webkit内核的浏览器上正确显示。

flex-direction定义主轴的方向,这里设为coloum,即竖向排列。

justify-content定义项目在主轴上的对齐方式,这里设为space-between,即两端对齐主轴边缘,剩余项目均匀排列。

align-items定义项目在交叉轴上的对齐方式,这里设为center,即居中显示。

6. Cloudreve的一些Bug

对外文字符(除英文,下同)的支持很不友好!

但是很奇妙的是您可以上传文件名带外文字符的文件,但是上传之后无法重命名,无法移动,无法删除。

(可以在后台管理面板里删除)

您也可以创建带外文字符的文件夹,但是无法将一个已有的文件夹更名为带外文字符的字符串。

目前我还没有找到这个问题的解决办法,如果您解决了此问题,请在文章下面留言,不胜感激!

7. 对此Bug的利用

如果您想创建一个公共账号,里面放一些大家只能下载,不能更改、移动、删除的文件,则可以利用此Bug,将想要共享的文件的文件名后加上一个外文字符(如:ラ),上传至根目录即可。

(不能上传至二级文件夹,因为文件夹可以被删除!)

注意将共享用户所在的用户组的的上传策略更改为不能上传文件。