nextcloud的手动安装

  • 1、安装环境
    • 1.1、安装Apache2
    • 1.2、安装PHP7.4
    • 1.3、安装MySQL8.0
    • 1.4、安装各种配套模块
  • 2、nextcloud的部署
    • 2.1、nextcloud安装
    • 2.2、nextcloud的优化
      • 2.2.1、PHP 内存限制低于建议值 512MB,这是由于php的默认memory_limit值为128M所导致的。
      • 2.2.2、设置https这个自行百度:可以[参考](https://blog.csdn.net/zjh1229/article/details/103236810)
      • 2.2.3、您的安装没有设置默认的电话区域
      • 2.2.4、此实例中的 php-imagick 模块不支持 SVG。为了获得更好的兼容性,建议安装它
      • 2.2.5、![在这里插入图片描述](https://img-blog.csdnimg.cn/20210606102316114.png)
      • 2.2.6、内存缓存未配置,为了提升使用体验,请尽量配置内存缓存
      • 2.2.7、大无语事件,启用https之后又出现一推报错
        • 2.2.7.1、PHP configuration option output_buffering must be disabled
        • 2.2.7.2、HTTP的请求头 "Strict-Transport-Security" 未设置为至少 "15552000" 秒。
        • 2.7.3、更改存储目录
        • 2.7.4、设置cron定时任务

1、安装环境

1.1、安装Apache2

输入以下命令安装Apache2

sudo apt install apache2 -y

1.2、安装PHP7.4

输入以下命令安装PHP7.4

sudo apt install php7.4 -y

1.3、安装MySQL8.0

输入以下命令安装

sudo apt install mysql-server -y

1.4、安装各种配套模块

sudo apt install libapache2-mod-php7.4 php7.4-gd php7.4-mysql php7.4-curl php7.4-mbstring php7.4-intl -y
sudo apt install php7.4-gmp php7.4-bcmath php-imagick php7.4-xml php7.4-zip -y

2、nextcloud的部署

2.1、下载nextcloud安装包
2.2、将下载下来的压缩包传到服务器
2.3、安装并配置nextcloud

//安装zip软件
sudo apt install zip
//解压安装包
unzip nextcloud-21.0.2.zip
// 移动到服务器目录下sudo mv nextcloud /var/www// 修改权限sudo chown -R www-data:www-data /var/www/nextcloud
//加载 vhost_alias模块
sudo a2enmod vhost_alias
//复制配置文件
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/nextcloud.conf
//修改配置
<VirtualHost *:80>ServerName www.hibai.com #配置站点的域名ServerAdmin mrdong916@163.com #邮箱DocumentRoot /var/www/html/www #站点文件存放路径ErrorLog ${APACHE_LOG_DIR}/error.log #log日志CustomLog ${APACHE_LOG_DIR}/access.log combined<Directory /var/www/nextcloud/>Require all grantedAllowOverride AllOptions FollowSymLinks MultiViews<IfModule mod_dav.c>Dav off</IfModule></Directory>
</VirtualHost>
//启用配置
sudo ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf// 重启apache
sudo service apache2 restart

输入服务器ip就可以打开以下界面

这时候,还没有完成安装,还需要给它创建数据库,我们使用phpMyAdmin来管理数据库

2.4、安装并配置phpMyAdmin
1、首先要获取PHPmyadmin的资源包
2、将下载好的压缩包传到服务器

// 解压
unzip phpMyAdmin-*-all-languages.zip
// 重命名
mv phpMyAdmin-*-languages phpMyAdmin
// 移动到服务器目录下
sudo mv phpMyAdmin /var/www
// 修改权限
sudo chown -R www-data:www-data /var/www/phpMyAdmin
// 设置虚拟主机配置文件参考上面// 重启apache
sudo service apache2 restart

2.1、nextcloud安装

使用下列命令查看数据库默认账号和密码

sudo nano /etc/mysql/debian.cnf


将在上面看到的账号和密码输入下面

创建一个名为nextcloud的账号和数据库并赋予此数据库的所有权限,再创建一个名为admin的管理员账号赋予所有权限

创建账号nextcloud域数据库,由于我已经创建过了所以有这个警告

然后按执行

然后创建admin账号
出来权限不一样其他基本一样
创建的时候在此处打钩

输入数据进行安装

2.2、nextcloud的优化

打开概览,查看报错情况

以上报错一条一条解决

2.2.1、PHP 内存限制低于建议值 512MB,这是由于php的默认memory_limit值为128M所导致的。

修改/etc/php/7.4/apache2/php.ini文件(ubuntu 20.04),其中7.2目录的命令是与当前php版本相符的,例如,php7.4,此目录名应为7.4。

找到memory_limit = 128M,将128M修改是512M,数值按内存情况及需要而定,保存退出。

sudo nano /etc/php/7.4/apache2/php.ini

Ctrl+w找到memory_limit = 128M,将128改为512

2.2.2、设置https这个自行百度:可以参考

2.2.3、您的安装没有设置默认的电话区域

编辑 Nextcloud config 目录中的 config.php 文件,在文件最下方, ); 前添加如下代码。

'default_phone_region' => 'CN',

2.2.4、此实例中的 php-imagick 模块不支持 SVG。为了获得更好的兼容性,建议安装它

连接Ubuntu Server终端,输入“sudo apt install libmagickcore-”,然后双击tab键,会显示以“libmagickcore-”开头的组件列表。

然后继续敲入完整的安装命令,安装“libmagickcore-6.q16-6-extra”组件。

sudo apt install libmagickcore-6.q16-6-extra

安装完毕重启apache2,如果有安装php-fpm,需一并重启,笔者是php7.4-fpm,如下:

service apache2 restart
service php7.4-fpm restart

再次刷新管理后台【概览】页,问题解决。

2.2.5、

这是由于Apache2未开启rewrite功能,或者虚拟机目录配置文件中未添加“AllowOverride All”参数,使得Nextcloud无法使用网站根目录下.htaccess文件参数所致。
输入如下命令开启rewrite功能,并重启Apache2服务。

sudo a2enmod rewrite
sudo systemctl restart apache2

打开/etc/apache2/sites-available下对应的虚拟目录配置文件,本例为000-default.conf,查看是否存在 “AllowOverride All” 参数,如下图所示。
开启了https之后,https虚拟主机也需要设置

如果是安装上面教程所写的虚拟主机配置就不需要做以上更改,只需要开启 a2enmod rewrite
退出保存,重启Apache2,刷新概览

2.2.6、内存缓存未配置,为了提升使用体验,请尽量配置内存缓存

使用Apcu和Redis解决
先安装apcu

sudo apt install php7.4-apcu

然后在/var/www/nextcloud/config/config.php添加

'memcache.local' => '\OC\Memcache\APCu',


安装redis

sudo apt install php-redis
sudo apt install redis-server

然后在/var/www/nextcloud/config/config.php添加

'memcache.locking' => '\OC\Memcache\Redis',
'memcache.distributed' => '\OC\Memcache\Redis',
'redis' => ['host' => 'localhost','port' => 6379,
],

退出保存,重启Apache2,刷新概览

可以看到报错基本消失

2.2.7、大无语事件,启用https之后又出现一推报错

慢慢解决吧

2.2.7.1、PHP configuration option output_buffering must be disabled

其实这个很好解决,PHP默认是有4096字节缓冲的。但是Nextcloud希望你关闭。如果你是自己安装的PHP,在你安装PHP的路径下,打开PHP配置文件(php.ini),将要

sudo nano /etc/php/7.4/apache2/php.ini
//ctrl+w找到
output_buffering = 4096
//在前面加;,;为PHP的注释符号,如
; output_buffering = 4096

重启一下Apache和PHP

2.2.7.2、HTTP的请求头 “Strict-Transport-Security” 未设置为至少 “15552000” 秒。

这个很简单,在nextcloud的虚拟主机的ssl配置文件最后添加以下代码

<IfModule mod_headers.c>Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"</IfModule>

如下图

再修改nextcloud的虚拟主机的l配置文件,添加以下代码

Redirect permanent / https://cloud.nextcloud.com/
//https://你的域名/


Apache启用headers

sudo a2enmod headers

输入

sudo service apache2 restart

重启Apache

2.7.3、更改存储目录

sudo cp -r /var/www/nextclou/data /你想移到的路径

然后修改/var/www/nextcloud/config.php文件

改成你的路径,然后重启Apache服务

2.7.4、设置cron定时任务


修改为cron,直接编辑,/etc/crontab
在最后输入以下

*/5  *  *  *  * www-data php -f /nextcloud/cron.php

/nextcloud改为你nextcloud的路径
不过这还不算好,因为 www-data 默认是不能执行 bash 相关操作的。
将/etc/passwd里面 www-data 对应的那一行改下就可以了

//先备份以下passwd文件
sudo cp /etc/passwd /etc/passwd.bak
//然后修改passwd文件
sudo nano /etc/passwd
//将原来的
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
//改为
www-data:x:33:33:www-data:/var/www:/bin/bash

保存退出
重启cron服务

nextclou安装配置和优化相关推荐

  1. mysql安装好需要优化配置一下_Mysql的安装、配置、优化

    Mysql的安装.配置.优化 安装步骤 1.先单击中的安装文件,如果是win7系统,请选择以管理员的方式运行. 2.大概需要30秒的时间,开始进入安装界面.请先把标红的打勾,好进行下一步的动作. 3. ...

  2. Nginx与PHP(FastCGI)的安装、配置、优化

    一.什么是 FastCGIFastCGI是一个可伸缩地.高速地在HTTP server和动态脚本语言间通信的接口.多数流行的HTTP server都支持FastCGI,包括Apache.Nginx和l ...

  3. 实战Nginx与PHP(FastCGI)的安装、配置与优化

     实战Nginx与PHP(FastCGI)的安装.配置与优化 2012-03-15 14:06:12 标签:安装 优化 配置 FastCGI PHP 原创作品,允许转载,转载时请务必以超链接形式标明文 ...

  4. arch linux键盘布局,Arch Linux的安装、配置、优化及美化(一)

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 本文主要讲述了Arch Linux的安装.配置.优化以及美化的步骤与方法. 一.安装准备 安装前的准备如下:一台能上网的 ...

  5. Nginx编译-安装-配置-优化实践总结

    http://www.zhuxiaodong.net/2016/configure-nginx-server-support-https-http2-on-centos7/ 一些更新说明: 2016- ...

  6. mysql 8.0优化配置_mysql 8.0.18 安装配置优化教程

    Mysql安装.配置.优化,供大家参考,具体内容如下 Mysql下载 首先登入官网下载mysql的安装包,官网地址https://dev.mysql.com/下拉到最后选择downloads里的 My ...

  7. Tomcat安装、配置、优化及负载均衡详解

    博客园 首页 新随笔 联系 管理 订阅 随笔- 31  文章- 0  评论- 25  Tomcat安装.配置.优化及负载均衡详解 一.常见JavaWeb服务器      1.WebLogic:是BEA ...

  8. IIS+PHP+MySQL+Zend Optimizer+GD库+phpMyAdmin安装配置[完整修正实用版]

    IIS+PHP+MySQL+Zend Optimizer+GD库+phpMyAdmin安装配置[完整修正实用版] IIS+PHP+MySQL+Zend Optimizer+GD库+phpMyAdmin ...

  9. Linux环境HBase安装配置及使用

    Linux环境HBase安装配置及使用 1. 认识HBase (1) HBase介绍 HBase = Hadoop database,Hadoop数据库 开源数据库 官网:hbase.apache.o ...

最新文章

  1. linux下clone一直运行,如何在Linux上使用clone()创建真正的线程?
  2. cdn托管html资源,七牛自定义域名cdn加速,静态资源托管至对象存储
  3. jq append添加的元素click获取不到的解决方法
  4. linux c 控制cpu占用率
  5. mysql优化sql相关(持续补充)
  6. 从零入门 Serverless | 一文搞懂函数计算及其工作原理
  7. java linux 串口_Linux Java 串口通信 | 学步园
  8. baseresponse响应类_Java response响应体和文件下载实现原理
  9. mysql日期为00_MySQL 8.0.13 设置日期为0000-00-00 00:00:00时出现的问题
  10. 正则表达式表示的IP地址
  11. 栈的效率为什么比堆高?为什么栈的运行速度比堆快?
  12. error code ELIFECYCLE
  13. MYSQL数据库日志
  14. iOS调用系统相机、相册里面的文字显示英文
  15. 蓝桥杯 算法训练 学做菜
  16. math_数集(数集符号)/算数运算中英文对照
  17. php必应壁纸 分辨率,必应壁纸php获取接口
  18. ccf201809-2买菜
  19. 什么是电子表格(Spreadsheet)?
  20. arm_neon.h文件ABI说明

热门文章

  1. TensorFlow知网文章1-TensorFlow平台下的视频目标跟踪深度学习模型设计
  2. mac 下安装python+selenium+firebox+pycharm+geckodriver
  3. 猫和老鼠手游的python代码_猫和老鼠手游猫鼠通用技巧讲解 赶紧进来好好向大佬们学习学习...
  4. 为 什 么 说 Synchronized 是 一 个 悲 观 锁 ?
  5. 使用gensim.models.Word2Vec.load(‘model.txt‘)报错,导致模型加载不了的解决办法之一
  6. ps高斯模糊出现白边
  7. 【Python实战】听书就用它了:海量资源随便听,内含几w书源,绝对精品哦~(好消息好消息)
  8. 不小心删了sxos文件夹_SXOS误升级11.0.1降级教程进入打开正版系统教程
  9. 苹果用Android发文,安卓和苹果怎么传文件 安卓和苹果传文件详细教程
  10. 多重共线性是如何影响回归模型的