NextCloud安装配置

摘要:在CentOS 7服务器上安装示例

在本安装教程中,我们将部署CentOS 7.5,PHP 7.2,MariaDB,Redis作为内存缓存,Nextcloud在Apache上运行。
首先安装CentOS 7最小安装。这应该提供一个足够的平台来运行一个成功的Nextcloud实例。

首先安装安装期间需要的一些依赖项,但这些依赖项在每天使用情况下也很有用:

yum install -y epel-release yum-utils unzip curl wget \
bash-completion policycoreutils-python mlocate bzip2

现在确保您的系统是最新的:

yum update -y

Apache:

yum install -y httpd
创建虚拟主机文件并向其添加以下内容:

vi /etc/httpd/conf.d/nextcloud.conf

<VirtualHost *:80>
  DocumentRoot /var/www/html/
  ServerName  your.server.com

<Directory "/var/www/html/">
  Require all granted
  AllowOverride All
  Options FollowSymLinks MultiViews
</Directory>
</VirtualHost>
确保已启用并启动了apache Web服务:

systemctl enable httpd.service
systemctl start httpd.service

PHP

接下来安装此安装所需的PHP模块。请记住,因为这是一个有限的基本安装,我们只安装必要的模块,而不是所有模块。如果您要进行更完整的安装,请参阅本页顶部的PHP模块列表:

yum install -y centos-release-scl
yum install -y rh-php72 rh-php72-php rh-php72-php-gd rh-php72-php-mbstring \
rh-php72-php-intl rh-php72-php-pecl-apcu rh-php72-php-mysqlnd rh-php72-php-pecl-redis \
rh-php72-php-opcache rh-php72-php-imagick
接下来,您需要创建一些符号链接:

ln -s /opt/rh/httpd24/root/etc/httpd/conf.d/rh-php72-php.conf /etc/httpd/conf.d/
ln -s /opt/rh/httpd24/root/etc/httpd/conf.modules.d/15-rh-php72-php.conf /etc/httpd/conf.modules.d/
ln -s /opt/rh/httpd24/root/etc/httpd/modules/librh-php72-php7.so /etc/httpd/modules/
下一个符号链接将为您提供php从终端中的任何位置调用的机会,包括occ命令:

ln -s /opt/rh/rh-php72/root/bin/php /usr/bin/php

数据库

如上所述,我们将使用MySQL / MariaDB作为我们的数据库:

yum install -y mariadb mariadb-server
确保启用数据库服务以在引导时启动:

systemctl enable mariadb.service
systemctl start mariadb.service
完成此操作后,请确保使用用户名和密码创建数据库,以便Nextcloud可以访问它。在文档中,请参阅数据库配置部分,特别是有关MariaDB的信息。有关如何设置数据库的完整说明。

NextCloud (可以通过安装RZ命令来上传,比较方便)

转到下载Nextcloud Server>下载>存档文件,供服务器所有者使用,并下载tar.bz2或.zip存档。
unzip nextcloud-*.zip
将内容复制到Web服务器的根目录。在我们的例子中,我们使用的是apache所以它将是/var/www/html/:

cp -R nextcloud/ /var/www/html/
在安装过程中,没有创建数据文件夹,因此我们将手动创建一个以帮助安装向导:

mkdir /var/www/html/nextcloud/data
确保apache具有对整个nextcloud文件夹的读写权限:

chown -R apache:apache /var/www/html/nextcloud
重启apache:

systemctl restart httpd.service
创建用于访问apache的防火墙规则:

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload
Redis:

yum install -y redis
systemctl enable redis.service
systemctl start redis.service
评论