怎样在 Ubuntu 16.04 上安装和配置 Nextcloud Apache

介绍

Nextcloud是ownCloud创始人发明的云存储服务。 与其他流行的服务不同,在这种情况下,您可以在服务器上设置自己的存储系统。 Nextcloud 为您提供对数据访问的细粒度控制,促进文件同步并允许跨设备共享。 它不仅对私人用户而且对组织来说都是一个很好的解决方案。
它支持多种数据库,如 Oracle、SQLite、PostreSQL 和 MySQL。 该项目提供适用于 Windows、GNU/Linux 和 macOS 的桌面客户端,以及适用于 Android 和 iOS 的移动应用程序。 它还提供了一些超出存储的附加功能。

请继续阅读以了解 怎样在 Ubuntu 16.04 上配置 Nextcloud 11。

先决条件

为了安装和使用 Nextcloud,您需要 Apache、MariaDB 和 PHP7。 如果您需要在 Ubuntu 16.04 上安装 LAMP 堆栈,请按照我们的指南进行操作。

安装

将 Nextcloud 11 下载到您的服务器上。 您可以通过浏览器执行此操作,或者使用以下命令轻松执行此操作:

$ wget https://download.nextcloud.com/server/releases/nextcloud-11.0.0.zip

接下来,提取存档:

$ unzip nextcloud-11.0.0.zip

现在,您应该看到一个名为的新文件夹

下一个云

; 复制这个目录到

/ 无功 / 万维网 /

,执行命令:

# cp -r nextcloud /var/www/

这 Apache 用户必须有写权限:

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

在 MariaDB 中创建用户和数据库

使用以下命令登录 MariaDB:

# mysql -u root -p

如果一切顺利,请为 Nextcloud 创建数据库。 在本教程中,我们将此数据库命名为 nextclouddb。

mysql> CREATE DATABASE nextclouddb;

为该数据库创建一个用户。 当然,您可以选择输入用户名。

mysql> CREATE USER [email protected] IDENTIFIED BY 'my_strong_password';

授予此用户所有权限:

mysql> GRANT ALL PRIVILEGES ON nextclouddb.* TO [email protected] IDENTIFIED BY 'my_strong_password';

接下来,只需退出:

mysql> FLUSH PRIVILEGES;
mysql> EXIT;

如果要在 MariaDB 中启用二进制日志,请编辑 mysqld 配置文件,即

/etc/mysql/mariadb.conf.d/50-server.conf

,添加,在

[mysqld]

部分,以下几行:

log-bin        = /var/log/mysql/mariadb-bin
log-bin-index  = /var/log/mysql/mariadb-bin.index
binlog_format  = mixed

Save 和 close 文件,然后重新加载 MariaDB:

# systemctl reload mysql

如果您看到这样的错误消息:无法重新加载 mysql.service:作业类型重新加载不适用于单元 mysql.service。
有关详细信息,请参阅系统日志和“systemctl status mysql.service”。
你必须重新启动mysql。

# systemctl restart mysql

Apache Nextcloud 的虚拟主机文件

/etc/apache2/sites-available

, 创建一个

下一个云配置文件

文件。

在该文件中,粘贴以下内容:

<VirtualHost *:80>
 DocumentRoot "/var/www/nextcloud"
 ServerName nextcloud.example.com

 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined

<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
 Satisfy Any

</Directory>

</VirtualHost>

笔记: 当然,在“ServerName”行你必须改变“example.com”与您的域。

保存并关闭后,创建一个链接到

/etc/apache2/sites-enabled/

,执行以下命令:

# ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf

需要启用 Apache 模块并安装 PHP 模块:

# a2enmod rewrite  env headers mime dir ssl setenvif
# apt install php7.0-common php7.0-gd php7.0-json php7.0-curl  php7.0-zip php7.0-xml php7.0-mbstring

这些模块将在重新启动后加载 Apache:

# systemctl restart apache2

通过 Web 浏览器进行配置

配置过程的最后一部分必须在您的浏览器上完成。 转到您指定的网址

下一个云配置文件

. 你会看到以下页面

笔记: 就我而言,有意大利本地化。

在那里你会被要求创建一个 admin 帐户,并指定 Nextcloud 数据文件夹。 出于安全原因,最好将最后一个放在 Nextcloud 根目录之外。 因此对于 example:

# mkdir /var/www/nextclouddata

确保 Apache 用户有写权限:

# chown www-data:www-data /var/www/nextclouddata -R

创建用户,指定数据文件夹,然后滚动页面您将看到:

在该表单中,您必须输入在前面步骤中提供的相同数据库信息。 然后你可以将 Nextcloud 连接到 MariaDB。

最后,只需单击完成设置并等待 Nextcloud 完成配置。 完成后,您将看到 Nextcloud Web 界面。

如您所见,设置非常简单,一旦完成,您将不会对结果感到失望! 恭喜! 您已经配置了自己的云存储,可以开始使用了!