如何在CentOS 8上安装和配置ownCloud

时间:2020-03-05 15:24:29  来源:igfitidea点击:

ownCloud是一个开放源代码,自托管的云平台,用于管理和共享文件。

它可以替代Dropbox,Microsoft OneDrive和Google Drive。
ownCloud可通过应用程序进行扩展,并具有适用于所有主要平台的桌面和移动客户端。

本教程说明了如何在CentOS 8上使用Apache安装和配置ownCloud。

准备工作

在继续执行以下步骤之前,请确保满足以下准备工作:

  • 以root或者具有sudo访问权限的用户身份登录。
  • 我们已经在系统上安装了MariaDB,Apache和PHP 7.2或者7.3.

创建数据库

ownCloud支持SQLite,Oracle 12g,PostgreSQL 9,MariaDB和MySQL。

我们将使用MariaDB作为数据库后端。

通过键入以下内容登录到MariaDB Shell:

sudo mysql

运行以下SQL语句以创建一个新数据库:

CREATE DATABASE owncloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

创建一个新的数据库用户并授予对该数据库的访问权限:

GRANT ALL ON owncloud.* TO 'ownclouduser'@'localhost' IDENTIFIED BY 'change-with-strong-password';

完成后,通过键入以下命令退出MariaDB控制台:

EXIT;

安装Apache和PHP模块

ownCloud是一个PHP应用程序。
CentOS 8附带了PHP 7.2(ownCloud支持),但其官方文档建议使用PHP 7.3.

运行以下命令以安装所有必需的PHP扩展:

sudo dnf install php php-curl php-gd php-intl php-json php-ldap php-mbstring php-mysqlnd php-xml php-zip php-opcache

通过重新启动FPM服务来加载新模块:

sudo systemctl restart php-fpm

下载ownCloud

在撰写本文时,ownCloud的最新稳定版本是10.3.2版。
在继续下一步之前,请访问ownCloud下载页面并检查是否有新版本的ownCloud。

使用以下wget命令下载ownCloud zip存档:

wget https://download.owncloud.org/community/owncloud-10.3.2.tar.bz2 -P /tmp

下载完成后,将存档解压缩到“/var/www”目录:

sudo tar jxf /tmp/owncloud-10.3.2.tar.bz2 -C /var/www

设置正确的所有权,以便Apache网络服务器可以完全访问ownCloud的文件和目录。

sudo chown -R apache: /var/www/owncloud

如果系统上正在运行SELinux,则需要更新SELinux安全上下文:

sudo chcon -tR httpd_sys_rw_content_t /var/www/owncloud

配置Apache

打开文本编辑器并创建以下Apache配置文件。

sudo nano /etc/httpd/conf.d/owncloud.conf

/etc/httpd/conf.d/owncloud.conf

Alias /owncloud "/var/www/owncloud/"
<Directory /var/www/owncloud
  Options +FollowSymlinks
  AllowOverride All
 <IfModule mod_dav.c>
  Dav off
 </IfModule>
 SetEnv HOME /var/www/owncloud
 SetEnv HTTP_HOME /var/www/owncloud
</Directory>

重新启动Apache服务以激活更改:

sudo systemctl restart httpd

安装ownCloud

现在已经下载了ownCloud,并配置了服务,请打开浏览器并通过访问服务器的域名或者IP地址(后跟“/owncloud”)开始ownCloud安装:

https://domain_name_or_ip_address/owncloud

我们将看到ownCloud设置页面。

如果我们无法访问该页面,则可能是防火墙阻止了端口“ 80”或者“ 443”。

使用以下命令打开必要的端口:

sudo firewall-cmd --zone=public --add-port=80/tcpsudo firewall-cmd --zone=public --add-port=443/tcpsudo firewall-cmd --runtime-to-permanent

输入所需的管理员用户名和密码以及先前创建的MySQL用户和数据库详细信息。

点击“完成设置”按钮。
安装过程完成后,我们将被重定向到以admin用户身份登录的ownCloud仪表板。