搭建一个属于自己的云盘

2022-04-10 09:43:24 浏览数 (1)

前言

kodbox是一款云存储程序,支持跨平台访问,可以用它来构建一套网盘存储系统,本文就跟大家分享下整个搭建过程,欢迎各位感兴趣的开发者阅读本文。

环境搭建

我们先去可道云官网下载服务端安装包,如下所示:

image-20210718225825408

下载成功后,我们将其解压出来,打开解压出来的文件夹如下所示:

image-20210718230707638

这是一个PHP项目,因此我们需要搭建一套PHP运行环境。

PHP运行环境

如果你的设备已经安装了PHP环境,这一步可以跳过。

因为我对PHP不是很熟悉,本文直接使用集成工具MxSrvs,来构建这套环境,软件下载成功后,直接安装即可,安装完成后的界面如下所示:

image-20210718234431362

序号1标注的地方默认是没有安装的,安装可道云时我们需要选择redis做缓存,因此需要安装下。

在扩展中点击redis即可

image-20210718235952605

环境配置

我们装好必要的环境后,接下来我们来看下具体的配置,打开MxSrvs的配置编辑菜单,如下所示 :

image-20210719000650960

配置nginx

软件集成的nginx,默认端口号是80,由于这个端口号已经被占用了,因此我么需要修改下端口号。

image-20210719000959555

点击上图中的序号1标注即可打开nginx的配置,我们找到listen:80;将80改为你想改的端口,此处改为82

image-20210719001406559

紧接着,我们添加一个路径映射,指定一个端口号用于访问我们的下载好的php项目,如下图所示,添加一个虚拟主机。

image-20210719001624282

image-20210719002707907

  • 主机名称为此配置的名字
  • 文件名称为要访问的php文件名称
  • 项目位置为我们刚才下载的php项目位置

添加完成后,默认生成的配置不是我们需要的,我们需要将其修改下:

  • listen为访问端口号
  • server_name 为我们刚才填写的
  • root 为项目路径,我们需要指向项目的根目录
代码语言:javascript复制
server {
	listen			83;
	server_name		kodbox; 
	root			/Users/likai/Documents/kodbox.1.21;
	#access_log		/Applications/MxSrvs/logs/kodbox.log;
	include			vhosts/_nginx.vhost.fpm;
}

上述配置是http访问,我还需要https访问,因此还需要再添加一个虚拟主机,配置如下所示:

  • ssl_certificate 为你的ssl证书文件所在路径(需要crt格式的证书)
  • ssl_certificate_key 为你的ssl证书key文件所在路径
代码语言:javascript复制
server {
	listen			84 ssl;
	server_name		kodbox-https;
	ssl_certificate      /Users/likai/Documents/nginx-ssl-home.kaisir.cn/1_home.kaisir.cn_bundle.crt;
    ssl_certificate_key  /Users/likai/Documents/nginx-ssl-home.kaisir.cn/2_home.kaisir.cn.key;

    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;
	root			/Users/likai/Documents/kodbox.1.21;
	#access_log		/Applications/MxSrvs/logs/kodbox-https.log;
	include			vhosts/_nginx.vhost.fpm;
}

配置PHP

软件集成的PHP服务,包含了phpMyAdmin,其默认端口是80,我们需要将其改成自己需要的端口号,此处改为81

打开/Applications/MxSrvs/bin/nginx/conf/vhosts/localhost.vhost进行修改

代码语言:javascript复制
# phpMyAdmin
server {
	listen			81;
	server_name		pma.mxss.com;
	root			/Applications/MxSrvs/www/_phpmyadmin;
	#access_log		/Applications/MxSrvs/logs/phpmyadmin.log;
	include			vhosts/_nginx.vhost.fpm;
}

# webgrind
server {
	listen			81;
	server_name		wg.mxss.com;
	root			/Applications/MxSrvs/www/_webgrind;
	#access_log		/Applications/MxSrvs/logs/webgrind.log;
	include			vhosts/_nginx.vhost.fpm;
}

# beanstalk-console
server {
	listen			81;
	server_name		bs.mxss.com;
	root			/Applications/MxSrvs/www/_beanstalk/public;
	#access_log		/Applications/MxSrvs/logs/beanstalk.log;
	include			vhosts/_nginx.vhost.fpm;
}

配置mysql

如果你的设备没有安装mysql,可以选择软件集成的mysql服务,默认端口号为3306,如果不冲突则无需做过多配置。

如果冲突的话,则需要改端口号,如下所示,将port所对应的值改为你需要的即可。

image-20210719005317545

配置redis

由于我的设备上已经有了redis,默认端口号6379被占用了,因此我需要修改下端口号,如下所示,我将端口号改为了63790

image-20210719005617317

随后,我们需要修改下php的配置文件在其末尾添加:

代码语言:javascript复制
extension=redis.so

php中使用redis需要安装php-redis插件(MxSrvs默认已经为我们安装了),这一步的目的就是为了让php可以识别到这个插件

启动项目

做完上述配置后,我们就可以启动项目了,我们打开MxSrvs,切换到“程序控制”菜单下,如下所示,根据自己的需要启动对应的服务即可。

image-20210719010859001

启动成功后,通过浏览器访问83端口,出现如下所示的界面就配置成功了,点击下一步继续进行初始化即可。

修改可道云端口号

如果你修改了mysql的端口号或者redis的端口号,初始化项目时可能会报错../app/autoload.php[2];Redis->flushAll0; NOAUTH Authentication required.,这是因为它使用的是默认的redis,还需要在可道云的配置文件中进行对应的修改。

我刚才还修改了redis的端口号,对应的也需要修改下可道云的端口号。

打开kodbox.1.21/config/setting_user.php文件:

  • DB_PORT 为你的mysql端口号
  • DB_USER 为你的mysql登陆用户名
  • DB_PWD 为你的mysql登陆密码
  • $config['cache']['redis']['port'] = '63790'; 为你的redis端口号(如果你选择了redis作为缓存这一项就会出现)
代码语言:javascript复制
<?php 
$config['database'] = array (
  'DB_TYPE' => 'mysqli',
  'DB_HOST' => '127.0.0.1',
  'DB_PORT' => 3306,
  'DB_USER' => 'root',
  'DB_PWD' => 'xxxx',
  'DB_NAME' => 'kodbox',
  'DB_SQL_LOG' => true,
  'DB_FIELDS_CACHE' => true,
  'DB_SQL_BUILD_CACHE' => false,
);
$config['cache']['sessionType'] = 'file';
$config['cache']['cacheType'] = 'file';


$config['cache']['sessionType'] = 'redis';
$config['cache']['cacheType'] = 'redis';
$config['cache']['redis']['host'] = '127.0.0.1';
$config['cache']['redis']['port'] = '63790';

实现效果

完成上述配置后,刷新浏览器即可成功进入可道云主界面,如下所示:

image-20210719011845567

下载客户端

可道云的客户端有android、ios、web、mac、windows,在其官网的下载界面即可下载对应的客户端。

image-20210719012216783

写在最后

至此,文章就分享完毕了。

我是神奇的程序员,一位前端开发工程师。

0 人点赞