PHP7 折腾安装 Owncloud+Redis

公司的文件不太放心放在百度云上,所以一直想建一个私有云,首选自然是 owncloud,不过安装过程总是有各种问题,经过一天努力,基本解决了。

1、Nginx 配置,参考之前的这个帖子

2、修改 PHP 配置:/usr/local/php/etc/php.ini

opcache.enable=1

然后 reload:

service php-fpm reload

3、解压安装 owncloud,过程就不冗述了,基本是傻瓜式。

4、解决权限问题。

安装登录后,无法上传文件,登陆后台,会提示 “由于 WebDAV 接口似乎被破坏,因此你的网页服务器没有正确地设置来允许文件同步。”

在官方脚本的基础上做了一些修改,执行下面这个 bash,有些错误提示,不用管,因为我们用的是 Nginx 不是 Apache。其中 “ocpath” 需要手动修改一下路径。

#!/bin/bash
ocpath='/var/www/owncloud'
htuser='www'
htgroup='www'
rootuser='root' # On QNAP this is admin

find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750

ocpath='yun.amoon.net' # Input your root directory

chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/

chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess

chmod 0644 ${ocpath}/.htaccess
chmod 0644 ${ocpath}/data/.htaccess

5、编译安装 Redis。

进入 lnmp 目录,执行./install.sh,安装 redis 即可。安装完成后会报错,提示无法启用 php module,这是因为我们用的是 PHP7,没关系,可以手动编译。

这时候先测试一下 redis 运行了没有:

service redis-server restart
ps ax | grep redis

默认在 6379 端口。

6、编译安装 Phpredis 模块

要编译 php7 分支,用 git clone,然后傻瓜式安装。

git clone -b php7 https://github.com/phpredis/phpredis.git
phpize
./configure
make
make install

安装完成后,会提示.so 文件的存储位置。

7、启用 PHPRedis 模块。

修改 PHP 配置:/usr/local/php/etc/php.ini,找到 [opcache] 部分,后面加入:

extension = "redis.so"

其实放其他地方也可以,我习惯把 extention 都放在这一部分。

然后 reload php-fpm,用 phpinfo 看看 Redis 版本号是否正常识别。

redis

8、修改 owncloud 配置:/config/config.php,加入:

'filelocking.enabled' => 'true',
'memcache.locking' => '\OC\Memcache\Redis',
'memcache.local' => '\OC\Memcache\Redis',
'redis' => array(
     'host' => 'localhost',
     'port' => 6379,
     'timeout' => 0.0,
     'password' => '', // Optional, if not defined no password will be used.
      ),
"default_language" => "en",

Redis 默认端口是 6379,顺带把默认语言也改成了英文,刷新后台管理首页,没有错误提示就是生效了。

owncloud

2 thoughts on “PHP7 折腾安装 Owncloud+Redis”

  1. 终于找个一个讲到重点的,我网页安装好了都没问题 就是桌面客户端连接的时候 显示连接关闭

    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.