CentOS 7 下使用 MySQL 5.7 + PHP 7 + Apache 部署 Nextcloud

记录在CentOS 7 下使用 MySQL 5.7 + PHP 7 + Apache 部署 Nextcloud过程。

准备

如果你准备使用 VPS 或者云主机作为 Nextcloud 服务器的话,可以先安装一个 Xshell。

注:以下代码块中,# 代表注释,$ 代表 Linux 命令。

1. 安装 MySQL 并创建 Nextcloud 数据库

# 安装 rpm 软件包(https://dev.mysql.com/downloads/repo/yum/)
$ rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

# 安装 MySQL 社区版服务器(y: 自动选择 y)
$ yum -y install mysql-community-server

# 安装 vim
$ yum -y install vim

# 修改 MySQL 配置文件
$ vim /etc/my.cnf

# 修改默认编码为 UTF-8,添加在 [mysqld] 后
character_set_server = utf8
init_connect = 'SET NAMES utf8'

# 关闭 MySQL 密码安全性策略,添加在最后(下列两种任选一个):
validate_password_policy = 0
validate_password = off

# 启动 MySQL 服务
$ systemctl start mysqld.service

# 开机启动 MySQL 服务
$ systemctl enable mysqld

# 重新加载服务
$ systemctl daemon-reload

# 搜索 MySQL 的 root 用户密码,启动后会在 /var/log/mysqld.log 中给 root 生成密码
$ grep 'temporary password' /var/log/mysqld.log

# 使用 root 用户登录 MySQL
$ mysql -uroot -p

# 修改 MySQL 的 root 用户密码
mysql> set password for 'root'@'localhost' = password('新密码');

# 创建 nextcloud 数据库
mysql> create database nextcloud;

# 创建 nextcloud 用户
mysql> create user 'nextcloud'@'localhost' identified by '密码';

# 给 nextcloud 用户授权 nextcloud 数据库的所有权限
mysql> grant all on nextcloud.* to 'nextcloud'@'localhost';

# 刷新权限(将当前 user 和 privilige 表中的用户信息/权限设置从 mysql 库提取到内存中)
mysql> flush privileges;

# 退出 MySQL
mysql> quit;

2. 安装 PHP

# 安装 rpm 软件包(https://webtatic.com/packages)
$ rpm -Uvh https://dl.Fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

# 安装 PHP 7.1(前三个是必须安装的,后面是打开 Nextcloud 后提示安装的)
$ yum -y install php71w php71w-devel php71w-mysqlnd php71w-xml php71w-mbstring php71w-gd

3. 安装 Apache

# 安装 httpd
$ yum -y install httpd

# 开机启动 httpd
$ systemctl enable httpd

# 重新加载服务
$ systemctl daemon-reload

# 防火墙添加 80 端口(permanent: 永久)
# firewall-cmd --zone=public --add-port=80/tcp --permanent

# 更新防火墙规则
# firewall-cmd --reload

4. 部署 Nextcloud

# 安装 wget
$ yum -y install wget

# 移动到 Apache 部署目录
$ cd /var/www/html

# 下载 Nextcloud 服务端
$ wget https://download.nextcloud.com/server/releases/nextcloud-12.0.0.zip

# 安装 unzip 解压程序
$ yum -y install unzip

# 解压服务端压缩包
$ unzip nextcloud-12.0.0.zip

# 赋予目录权限(R: 递归)
$ chmod -R 777 nextcloud

# 永久关闭 SELinux(需重启)
$ sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config

# 临时关闭 SELinux
setenforce 0

# 启动 httpd
$ systemctl start httpd.service

浏览器打开 IP/nextcloud 并输入配置:

CentOS 7 下使用 MySQL 5.7 + PHP 7 + Apache 部署 Nextcloud

点击安装完成后等一两分钟进入文件列表:

CentOS 7 下使用 MySQL 5.7 + PHP 7 + Apache 部署 Nextcloud

然后下载客户端按照提示操作就好了。

相关推荐