云网牛站
所在位置:首页 > Linux云服务器 > 使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

2019-01-02 15:56:08作者:叶云稿源:云网牛站

本文介绍使用LAMP服务器在Debian 9 Stretch操作系统上安装NextCloud 15.0.0的具体步骤。NextCloud是一个免费的开源自托管云存储解决方案,可替代Dropbox等第三方云存储服务。可以先参考Ubuntu 18.04下手动安装NextCloud的过程一文。

 

条件

需要具备以下三点条件:

1、Debian 9 VPS(虚拟专用服务器)或本地Debian计算机。

2、在Debian 9上安装LAMP服务器,参考Debian搭建LAMP环境(Apache MariaDB PHP7)

3、可用的域名。

 

第1步:下载NextCloud 15.0.0

使用以下命令将NextCloud服务器zip存档下载到Debian 9系统上。在选写本文时,最新的稳定版本是NextCloud 15.0.0:

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

你可以转到 https://nextcloud.com/install 页面并单击下载按钮(Download for server)以查看最新版本,到了如下页面就可以下载到最新的NextCloud版本了:

使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

使用解压缩将其解压缩到/var/www/目录:

sudo apt install unzip

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

现在我们将www-data(Apache用户)作为/var/www/nextcloud/的所有者:

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

 

第2步:在MariaDB中创建数据库和用户

使用以下命令登录MariaDB数据库服务器:

sudo mariadb -u root

然后使用下面的MariaDB命令为NextCloud创建一个数据库。本文将数据库命名为nextcloud,你可以使用你喜欢的任何名字(请自定义nextcloud),但不要在结尾处留下分号:

create database nextcloud;

然后创建一个单独的用户,同样,你可以为此用户使用你的首选名称,用你的首选密码替换你的密码(your-password):

grant all privileges on nextcloud.* to nextclouduser@localhost identified by 'your-password';

上面的命令将创建用户并授予所有权限,现在刷新MariaDB权限并退出:

flush privileges;

exit;

 

第3步:在MariaDB中启用二进制日志记录

编辑MariaDB配置文件:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

在[mysqld]部分添加以下三行:

log-bin        = /var/log/mysql/mariadb-bin

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

binlog_format  = mixed

必须mixed二进制日志的格式,保存并关闭文件,然后重启MariaDB服务:

sudo systemctl restart mariadb

现在,MariaDB中启用了二进制日志。

 

步骤4:为Nextcloud创建Apache虚拟主机文件

我们将在/etc/apache2/sites-available目录中创建nextcloud.conf文件:

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

复制并粘贴文件中的以下行,将nextcloud.your-domain.com替换为你的实际域名,还需要将域名指向DNS中Debian 9服务器的IP地址:

<VirtualHost *:80>

DocumentRoot "/var/www/nextcloud"

ServerName nextcloud.your-domain.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>

保存并关闭文件,然后使用以下命令启用此虚拟主机:

sudo a2ensite nextcloud

我们还需要启用一些Apache模块:

sudo a2enmod rewrite headers env dir mime setenvif ssl

安装所需的PHP模块:

sudo apt install php7.0-common php7.0-mysql php7.0-gd php7.0-json php7.0-curl php7.0-zip php7.0-xml php7.0-mbstring

重新启动Apache,以便可以加载上述Apache和PHP模块:

sudo systemctl restart apache2

 

第5步:启用HTTPS

现在,你可以通过输入Nextcloud安装的域名来访问浏览器中的Nextcloud Web安装向导,本文以下面的域名为例:

nextcloud.your-domain.com

使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

在输入任何重要信息之前,我们应该在Nextcloud上启用安全的HTTPS连接,请参考网站从HTTP升级成HTTPS完全配置教程

从Debian 9存储库安装certbot(Let's Encrypt)客户端:

sudo apt install certbot python-certbot-apache

现在运行以下命令以获取免费的TLS/SSL证书,将your-email-address及nextcloud.your-domain.com替换为你的信息:

sudo certbot --apache --agree-tos --redirect --hsts --email your-email-address -d nextcloud.your-domain.com

说明:

-apache:使用apache插件。

-agree-tos:同意服务条款。

-redirect:自动将所有HTTP流量重定向到HTTPS。

-hsts:添加Strict-Transport-Security标头。

在几秒钟内将看到如下所示的画面,这意味着已成功获取并安装了TLS证书,同时TLS配置在SSL测试中得分A:

使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

 

在Web浏览器中完成安装

现在,在你的Web浏览器地址栏中,输入你的NextCloud域名,将看到它会自动重定向到https:

nextcloud.your-domain.com

使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

你需要创建一个管理员帐户,数据文件夹是存储用户文件的位置,出于安全原因,最好将数据目录放在Nextcloud Web根目录之外,例如/var/www/nextcloud-data,可以使用以下命令创建:

sudo mkdir /var/www/nextcloud-data/

然后确保Apache用户(www-data)具有对数据目录的写入权限:

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

然后输入之前创建的数据库用户名,数据库名称和密码,以将Nextcloud连接到MariaDB数据库。

完成后,你将看到Nextcloud的Web界面,同时也意味着现在可以开始将其用作私有云存储了:

使用LAMP在Debian 9 Stretch上安装NextCloud 15.0.0的步骤

 

相关主题

在Debian 9 Stretch上安装NextCloud桌面客户端

精选文章
热门文章