如何在Ubuntu 18.04上使用Apache安装和配置Nextcloud

Nextcloud 是一个开源的,自托管的文件共享和协作平台,类似于Dropbox。它与媒体播放器,日历和联系人管理捆绑在一起。 Nextcloud可通过应用程序扩展,并具有适用于所有主要平台的桌面和移动客户端。 在本教程中,我们将向您展示如何在Ubuntu 18.04计算机上使用Apache安装和配置Nextcloud。

4 min read
By myfreax
如何在Ubuntu 18.04上使用Apache安装和配置Nextcloud

Nextcloud 是一个开源的,自托管的文件共享和协作平台,类似于Dropbox。它与媒体播放器,日历和联系人管理捆绑在一起。

Nextcloud可通过应用程序扩展,并具有适用于所有主要平台的桌面和移动客户端。

在本教程中,我们将向您展示如何在Ubuntu 18.04计算机上使用Apache安装和配置Nextcloud。

先决条件

开始学习本教程之前,请确保您以具有sudo权限的用户身份登录

第1步:创建MySQL数据库

NextCloud可以使用SQLite, PostgreSQL 或MySQL数据库来存储其所有数据。在本教程中,我们将使用MySQL作为首选数据库。

如果您的Ubuntu服务器上未安装MySQL或MariaDB,则可以按照以下说明之一进行安装:

创建数据库和用户,请首先通过键入以下命令登录到MySQL Shell:

sudo mysql

运行以下SQL语句创建一个名为nextcloud,用户名为nextclouduser的数据库,并向授予用户所有必要的权限

CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;
EXIT;

步骤2:安装PHP和Apache

Nextcloud是一个PHP应用程序。 PHP 7.2是Ubuntu 18.04的默认PHP版本,它完全受Nextcloud支持,建议使用。

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

sudo apt install apache2 php7.2 php7.2-gd php7.2-json php7.2-mysql php7.2-curl php7.2-mbstring php7.2-intl php7.2-imagick php7.2-xml php7.2-zip libapache2-mod-php7.2

第3步:配置防火墙

假设您正在使用 UFW 管理防火墙,则需要打开HTTP(80)和HTTPS(443)端口。为此,您可以启用“ Apache Full”配置文件,其中包括两个端口的规则:

sudo ufw allow 'Apache Full'

第4步:下载Nextcloud

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

首先使用以下 wget命令下载最新版本的Nextcloud:

wget https://download.nextcloud.com/server/releases/nextcloud-15.0.0.zip -P /tmp

下载完成后,将归档文件提取到/ var / www目录:

sudo unzip /tmp/nextcloud-15.0.0.zip  -d /var/www

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

sudo chown -R www-data: /var/www/nextcloud

第5步:配置Apache

打开您的文本编辑器,然后创建以下Apache配置文件。

sudo nano /etc/apache2/conf-available/nextcloud.conf

/etc/apache2/conf-available/nextcloud.conf

Alias /nextcloud "/var/www/nextcloud/"

<Directory /var/www/nextcloud/>
  Options +FollowSymlinks
  AllowOverride All

 <IfModule mod_dav.c>
  Dav off
 </IfModule>

 SetEnv HOME /var/www/nextcloud
 SetEnv HTTP_HOME /var/www/nextcloud

</Directory>

使用以下方法启用新添加的配置和所有必需的Apache模块:

sudo a2enconf nextcloud
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime

通过重新启动Apache服务来激活更改:

sudo systemctl reload apache2

第6步:安装Nextcloud

现在,下载了Nextcloud并配置了所有必要的服务后,请打开浏览器并通过访问服务器的域名或IP地址,然后按/nextcloud来启动Nextcloud的安装:

http://domain_name_or_ip_address/nextcloud

系统会为您显示Nextcloud设置页面。

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

单击Finish setup按钮,安装过程完成后,您将被重定向到以admin用户身份登录的Nextcloud仪表板。

结论

您已了解如何在Ubuntu 18.04计算机上安装和配置Nextcloud。如果您的域名与Nextcloud服务器相关联,则可以按照本指南进行操作,并通过Let's Encrypt 保护 Apache。

要查找有关如何管理Nextcloud实例的更多信息,请访问 Nextcloud文档页面。

如有任何疑问,请在下面发表评论。