近日整了台EUserv的免费VPS,因为是免费的,所以需每月续费延期以及绑定的是IPv6,给服务器安装了宝塔面板,搭配Cloudflare,解析到AAAA记录的IPv6地址,即可搭建网站使用,让IPv4网络也能正常访问网站。
于是在这台服务器尝试搭建Cloudreve网盘系统,把搭建过程所遇问题做个记录,以备不时之需。
到官网下载安装包,按正常流程搭建站点,建议使用Nginx及PHP7.2以上版本,避免出现不可预知的奇怪问题坑。下一步把安装包上传解压后,浏览器输入域名+/CloudreveInstaller/
进入安装界面,接着会出现下图所示的几个问题,我们逐个进行解决。
官网下载地址:https://cloudreve.org/download.php,选择上面最新的安装包即可。
URL Rewrite(伪静态规则)
location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break; } }
将以上代码粘贴至站点设置下伪静态规则下即可
安装PHP的fileinfo扩展
因VPS内存只有975mb,使用宝塔面板安装(软件商店>PHP-7.2>设置>安装扩展>fileinfo>安装)编译时会因内存不足而报错无法安装,于是使用宝塔的Linux工具箱设置Swap/虚拟内存,可能是因为主机商限制不允许设置虚拟内存,设置了之后依然安装失败,无奈之下查找了各种资料,根据资料折腾了半天终于使用手动安装成功。
使用宝塔自带安装失败后,并设置好虚拟内存(不知是否有用),在软件商店把暂时无用的应用都停止以腾出内存,如MySQL、FTP等(可能所有应用包括Nginx、PHP都能关闭,不影响安装),然后在SSH终端依次输入以下几行命令执行,这里以PHP 7.2为例,其他版本注意修改路径名。
cd /www/server/php/72/src/ext/fileinfo/ make distclean ./configure --with-php-config=/www/server/php/72/bin/php-config --disable-fileinfo make && make install
其中给./configure
加上了选项:--disable-fileinfo
,防止编译出现错误,原理暂不知。
最后,修改php7.1的配置文件,添加配置项:
extension=/www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/fileinfo.so
经过以上折腾,终于顺利安装上fileinfo,再次刷新,已经能检测通过,如下图:
二步验证
执行前,需在宝塔面板把几个所需PHP函数解除禁用,分别是:putenv
和pcntl_signal
,先执行cd /www/wwwroot/cloud
定位到网站的根目录,再依次执行以下命令,在执行过程中如果出现红色警告,则需根据提示开启对应函数,直至显示开始下载,最终显示绿色文字才是执行成功。
composer require topthink/framework=5.* composer require phpgangsta/googleauthenticator:dev-master composer require endroid/qrcode
都执行完成后,安装向导已显示通过
然后根据向导下一步,顺利安装完成,进入后台。
为什么我只要在宝塔添加网站,就直接访问不了。还有就是可以挂载onedrive吗?
检查PHP版本以及伪静态规则是否正确,Cloudreve是支持OneDrive的。寻求帮助可以去官网查查看资料:http://cloudreve.org/