私有云部署Owncloud
目录:
owncloud
owncloud是一个开源免费专业的私有云存储项目,可以快速的在个人电脑或服务器上架设一套专属的私有云文件同步网盘。
安装方式
关闭防火墙
/etc/init.d/iptables stop
下载mysql
yum install mysql-server
配置开机启动
/etc/init.d/mysqld start
chkconfig mysqld on
创建需要的数据库
mysql> create database owncloud;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on owncloud.* to 'owncloud'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.02 sec)
安装owncloud
配置repo源
[root@why ~]# rpm --import https://download.owncloud.org/download/repositories/stable/CentOS_6/repodata/repomd.xml.key
[root@why ~]# wget http://download.owncloud.org/download/repositories/stable/CentOS_6/ce:stable.repo -O /etc/yum.repos.d/ce:stable.repo
如果是CentOS6的系统不能直接yum安装owncloud,否则会报一下错误
Error: Package: owncloud-deps-php5-9.1.5-1.1.noarch (ce_stable)
Requires: php >= 5.4.0
Available: php-5.3.3-49.el6.x86_64 (base)
php = 5.3.3-49.el6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
一般CentOS6的源都是5.3版本,配置一个有php5.4版本的源,先把php安装上
wget http://rpms.famillecollet.com/enterprise/remi.repo -O /etc/yum.repos.d/remi.repo
yum --enablerepo=remi install php -y
yum --enablerepo=ce:stable,remi install owncloud
我的httpd之前就已经下好了,不知道owncloud中是否是否有httpd的依赖
使http服务reload
apachectl graceful
创建owncloud存储目录
mkdir /mnt/data/owncloud
chown apache:apache /mnt/data/owncloud
chmod 770 /mnt/data/owncloud
这里也可以用nfs或者其他文件系统,本次使用的为本地磁盘。
配置owncloud
直接通过IP,端口,路径登录
设置管理员用户,密码,使用的文件存储路径,数据库相关,数据库使用mysql,然后由上到下依次是数据库用户名和对应的密码,数据库库名,连接的主机
网盘也可以通过手机APP的方式连接
windows端的下载 https://owncloud.org/install/#install-clients
这就是网盘的界面,是不是和某度网盘相似
这些文件是和
[root@why owncloud]# ll /mnt/data/owncloud/admin/files/
total 3972
drwxr-xr-x 2 apache apache 4096 May 16 14:26 Documents
-rw-r--r-- 1 apache apache 4055415 May 16 14:26 ownCloud Manual.pdf
drwxr-xr-x 2 apache apache 4096 May 16 14:26 Photos
配置域名登录
在安装owncloud的时候会在apache配置目录下生成owncloud.conf和php.conf
[root@why ~]# cd /etc/httpd/conf.d/
[root@why conf.d]# ll
total 20
-rw-r--r-- 1 root root 504 May 18 13:47 owncloud.conf
-rw-r--r-- 1 root root 990 Feb 18 22:58 php.conf
-rw-r--r-- 1 root root 392 Jul 18 2016 README
-rw-r--r-- 1 root root 299 Jul 12 2016 welcome.conf
-rw-r--r-- 1 root root 43 Aug 15 2014 wsgi.conf
可以看一下原来的配置文件
[root@why conf.d]# vi owncloud.conf
Alias /owncloud "/var/www/html/owncloud/"
<Directory "/var/www/html/owncloud">
Options +FollowSymLinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/owncloud
SetEnv HTTP_HOME /var/www/html/owncloud
</Directory>
<Directory "/var/www/html/owncloud/data/">
# just in case if .htaccess gets disabled
Require all denied
</Directory>
我这边做了如下修改,目的是使用域名直接登录
[root@why conf.d]# vi owncloud.conf
<VirtualHost *:81> #不使用80端口
ServerName owncloud.whysdomain.com #配置域名
DocumentRoot "/var/www/html/owncloud" #不使用/owncloud
#Alias /owncloud "/var/www/html/owncloud/"
<Directory "/var/www/html/owncloud">
Options +FollowSymLinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/owncloud
SetEnv HTTP_HOME /var/www/html/owncloud
</Directory>
<Directory "/var/www/html/owncloud/data/">
# just in case if .htaccess gets disabled
Require all denied
</Directory>
</VirtualHost>
将http的配置reload
[root@why conf.d]# apachectl graceful
通过域名登录
您正在访问来自不信任域名的服务器。请联系你的系统管理员。如果你是系统管理员,配置 config/config.php 文件中参数 "trusted_domain" 设置。可以在 config/config.sample.php 文件中找到例子基于你的配置,作为系统管理员,你可能还能点击下面的按钮来信任这个域。
添加为信任域名即可
如果出现文件不能正常上传
报错问题为:Request Entity Too Large 原因是请求实体太长了。一般出现种情况是Post请求时Body内容Post的数据太大了 在nginx上可以配置如下参数
client_max_body_size 500m;