本着折腾至上的原则,新购一台华为云耀vps,安装lnmp1.6,搭个博客,再安个nextcloud。
首先从lnmp官网下载lnmp,然后上传到服务器进行安装,博客安在默认www目录中,一切正常。
然后开始安装nextcloud,遇到了各种坑。
第一步,通过lnmp vhost add添加一个虚拟目录,用于nextcloud。
第二步,解压nextcloud的zip包到虚拟目录中。
第三步,打开安装首页,显示内部服务错误……@#¥%……&U%#¥疯掉,什么错误原因都不显示,只显示内部服务错误,更崩溃的是找不到错误日志。终于,找到一个方案,在虚拟目录中自己添加一个data的文件夹,为了保险,我把权限设为777,好吧,第一个坑解决了,有错误日志了,路径为/home/wwwroot/nextcloud/
,日志名称是nextcloud.log,,从里边找到了问题描述Unable to create file /home/wwwroot/nextcloud/config/config.php because Permission denied at /home/wwwroot/nextcloud/lib/private/Config.php#241,看来是权限问题=_=|||
第四步,查找nextcloud各个目录到底需要什么样的权限!@%……&%……¥#@查找无果~~~换个思路,查找问题描述,终于找到几个比较靠谱的,比如这个:解决CentOS中安装Nextcloud出现“内部服务器错误”https://www.orgleaf.com/2891.html。按照这个博文的思路,建立自己的目录权限设置处理文件,随便放到哪个文件夹都行(别放到网站目录下就好^_^),我放在了/root/a.sh
#!/bin/bash
ocpath='/home/wwwroot/nextcloud/' #修改为你Nextcloud所放置的目录
htuser='www' #网页服务器用户(查看nginx的配置文件/usr/local/nginx/conf/nginx.conf,查看第一行user www www; 这表示用户是www,用户组是www)
htgroup='www' #网页服务器的组(查看nginx的配置文件/usr/local/nginx/conf/nginx.conf,查看第一行user www www; 这表示用户是www,用户组是www)
rootuser='root'
printf "Creating possible missing Directories\n"
mkdir -p $ocpath/data
mkdir -p $ocpath/assets
mkdir -p $ocpath/updater
printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
printf "chown Directories\n"
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/assets/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/
chown -R ${htuser}:${htgroup} ${ocpath}/updater/
chmod +x ${ocpath}/occ
printf "chmod/chown .htaccess\n"
if [ -f ${ocpath}/.htaccess ]
then
chmod 0644 ${ocpath}/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
fi
if [ -f ${ocpath}/data/.htaccess ]
then
chmod 0644 ${ocpath}/data/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess
fi
保存成功后执行,输入sh a.sh
运行即可。
刷新页面,终于~~~~页面显示正常了
第五步,根据向导新建用户,输入数据库信息,然后点完成,准备开始使用~~~
然后,巨坑开启了~!@#¥%……U#¥#¥#!@#¥%……(×&……%¥#@
这个地址居然显示404 http://localhost/index.php/apps/files/
彻底要疯掉了,查nextcloud的错误日志,居然什么都没有,看来还没进入nextcloud的流程就出错了,查nginx的访问日志,结果也显示这一页是404
再次开始搜baidu,搜相关的问题,终于发现最可能的情况是因为nginx配置的pathinfo有问题,继续百度,搜到这篇文章:
“nginx配置pathinfo模式,解决访问404”网址:https://www.cnblogs.com/hanshuai0921/p/7304996.html?utm_source=itdadao&utm_medium=referral
参照这篇文章,对/usr/local/nginx/conf/nginx.conf和/usr/local/nginx/conf/vhost/nextcloud.conf下手,修改两个文件中的include enable-php.conf
为 include enable-php-pathinfo.conf
切换目录到/usr/local/nginx/sbin/
,执行./nginx -s reload
再次刷新网页,谢天谢地~~~系统终于显示正常了
至此,安装终于告一段落,开始正式试用了,如果后续有问题我继续补充到后边~~~~
还不快抢沙发