CentOS 7 上搭建 ownCloud 私有云

所需软件 & 环境

操作系统:CentOS 7.3.1711 最小安装 (已关闭 SELinux 和防火墙)

应用软件: Nginx  、MariaDB  、PHP  、ownCloud 10.0.3

一.安装软件包

yum -y install nginx mariadb-server redis lbzip2 php71w-common php71w-fpm php71w-gd php71w-mysql php71w-mbstring php71w-intl php71w-mcrypt php71w-pecl-imagick php71w-xml php71w-pecl-redis

二. 下载 & 安装 ownCloud

wget  https://download.owncloud.org/community/owncloud-10.0.2.tar.bz2
tar -xf ./owncloud-10.0.3.tar.bz2 mv owncloud /usr/share/nginx/
chown -R nginx:nginx /usr/share/nginx/owncloud
find /usr/share/nginx/owncloud -type d -exec chmod 755 {} \;
find /usr/share/nginx/owncloud -type f -exec chmod 644 {} \;

三.创建 ownCloud 数据目录

ownCloud 上的数据将存储到 /data/owncloud 中。

mkdir /data/owncloud
chown nginx:nginx /var/lib/owncloud

四.配置数据库

4.1启动数据库

systemctl start mariadb

systemctl enable mariadb

4.2 进行安全设置

mysql_secure_installation

4.3 数据库配置

CREATE USER ‘owncloud‘@‘localhost‘ IDENTIFIED BY ‘owncloud‘;
CREATE DATABASE owncloud;
GRANT ALL PRIVILEGES ON owncloud.* TO ‘owncloud‘@‘localhost‘ IDENTIFIED BY ‘owncloud‘;
FLUSH PRIVILEGES;

五.配置nginx

vim /etc/nginx/conf.d/owncloud.conf
upstream php-handler {
        server unix:/run/php-fpm/owncloud.sock;
}
server {
    listen    8080;
    server_name    _;
    # Path to the root of your installation
    root    /usr/share/nginx/owncloud;
    # set max upload size
    client_max_body_size    10G;
    fastcgi_buffers    64    4K;
    # Disable gzip to avoid the removal of the ETag header
    gzip    off;
    # Uncomment if your server is build with the ngx_pagespeed module
    # This module is currently not supported.
    #pagespeed    off;
    rewrite    ^/caldav(.*)$    /remote.php/caldav$1 redirect;
    rewrite    ^/carddav(.*)$    /remote.php/carddav$1 redirect;
    rewrite    ^/webdav(.*)$    /remote.php/webdav$1 redirect;
    index    index.php;
    error_page    403    /core/templates/403.php;
    error_page    404    /core/templates/404.php;
    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }
    location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README){
        deny all;
    }
    location / {
        # The following 2 rules are only needed with webfinger
        rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
        rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;
        rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
        rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;
        rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;
        try_files $uri $uri/ /index.php;
    }
    location ~ \.php(?:$|/) {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_pass php-handler;
    }
    # Optional: set long EXPIRES header on static assets
    location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
          expires 30d;
            access_log off;
    }
}

六. 配置 PHP-FPM

6.1 编辑配置文件

vi /etc/php-fpm.d/owncloud.conf
[owncloud]
user = nginx
group = nginx
listen = /run/php-fpm/owncloud.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0600
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
slowlog = /var/log/php-fpm/owncloud-slow.log
php_admin_value[error_log] = /var/log/php-fpm/owncloud-error.log
php_admin_flag[log_errors] = on
php_value[memory_limit] = 512M
php_value[session.save_handler] = files
php_value[session.save_path]    = /var/lib/php/session
php_value[soap.wsdl_cache_dir]  = /var/lib/php/wsdlcache
php_value[upload_max_filesize] = 16G
php_value[post_max_size] = 16G
php_value[max_input_time] = 3600
php_value[max_execution_time] = 3600
php_value[date.timezone] = Asia/Shanghai
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

6.2 创建 PHP 会话目录

mkdir -p /var/lib/php/session && chown -R nginx:nginx /var/lib/php/session

七.启动服务

7.1 启动服务

systemctl start nginx php-fpm

7.2 设置开机启动

systemctl enable nginx php-fpm mariadb

 

八.配置缓存 & 启用本地文件读取

配置缓存文件

vi /usr/share/nginx/owncloud/config/config.php   #倒数第二行开头(installed 那里) 
‘memcache.local‘ => ‘\OC\Memcache\Redis‘,
‘redis‘ => [
   ‘host‘ => ‘localhost‘,
   ‘port‘ => 6379,
],
‘memcache.locking‘ => ‘\OC\Memcache\Redis‘,
‘files_external_allow_create_new_local‘ => true,

配置计划任务

crontab -e
*/15 * * * * sudo -u nginx php -f /usr/share/nginx/owncloud/cron.php > /dev/null 2>&1

  

 

 

  

  

原文地址:https://www.cnblogs.com/jimmy-xuli/p/9068310.html

时间: 2024-11-02 02:51:17

CentOS 7 上搭建 ownCloud 私有云的相关文章

Centos 6.9 搭建owncloud 私有云盘

本文主要介绍在lamp环境下快速安装和部署owncloud 私有云盘 基本流程: 1.owncloud简介 2.yum部署lamp环境 3.下载owncloud 软件包并且安装 4.测试owncloud是否正常使用 流程一:owncloud简介 ownCloud是是一款私有云存储的搭建工具.可以在纯局域网环境使用,也可以搭建在公有云上.分为服务器和客户端两个部分,服务器以前是支持Windows.Mac OS和Linux的,但是现在的版本只支持Linux了. 客户端则支持Windows.Mac O

搭建owncloud私有云

参考:教程1,教程2,,教程4 硬件:raspi 3b+ 系统:UbuntuMate 步骤: 1.安装Apache2 sudo apt-get install apache2 完成后访问服务器地址(默认80端口),如果显示如下图,则表示安装成功. 2.安装MySQL sudo apt-get install mysql-server mysql-client 3.安装phpmyadmin sudo apt-get install phpmyadmin 出现窗口选择"Apache2",然

centos 6.6搭建seafile私有云盘

1创建云盘目录mkdir /yunpancd /yunpan 2把云盘安装包放到目录下wget http://download-cn.seafile.com/seafile-server_4.2.3_x86-64.tar.gz或者用rz命令上传.用rz要先用yum安装lrzsz. 3.解压tar xzvf seafile-server_4.2.3_x86-64.tar.gzmkdir installedmv seafile-server_* installed 4.更新yumyum update

在CentOS 6上搭建私有的Docker Registry

在CentOS 6上搭建私有的Docker Registry v2Registry概念Registry是一个无状态的, 高可扩展的服务器端应用程序, 用于存储和分发Docker Image.依赖安装1. 安装Docker要使用Docker Registry, 当然首先要安装Docker. 假设你已经安装好Docker. 没有安装好可以参考官方文档.2. 安装Docker-composeDocker-compose是一个非常有用的Docker运行, 管理的工具. 你可以通过定义compose文件,

搭建自己的OwnCloud私有云

最近在网上看到了一个免费空间Hostinger,免费版包含了2G空间.100G月流量,每个用户可以创建两个免费空间,我用其中的一个安装了WordPress,用来当自己的Blog,效果可以看这里,另外一个安装OwnCloud. OwnCloud是开源的私有云,服务器安装好后,可以用客户端进行同步,客户的包含了Windows.Mac.Linux以及各种手机系统. 下面就是我搭建OwnCloud的介绍: 下载OwnCloud,打开网站,可以看到各种下载,我下载了ownCloud的zip包. 上传Own

在CentOS 7上搭建lamp环境

在CentOS 7上安装httpd.php.MariaDB,ServerIP 192.168.199.157 首先安装相关程序包 2.启动httpd和mariadb 3.查看各服务启动情况 80端口和3306端口都处于监听状态了 4.测试php (1)编辑/etc/httpd/conf/httpd.conf文件,在DirectoryIndex后面填写index.php,定义默认主页为index.php. (2)检查配置文件是否有语法错误. (3)制作默认主页index.php. (4)重载htt

CentOS 7 上搭建nginx 1.6

准备要素,编译环境,创建组,创建被service所管理的脚本,两种隐藏版本方法,实现主进程用root创建 子进程有nginx 创建,图片缓存时间 在最新的centos7.3上搭建nginx 1.6. 安装需要的环境 yum install gcc gcc-c++ pcre-devel zlib-devel -y yum install elinks -y 创建用户组 ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ cd /opt/nginx-

Centos7下nginx+owncloud+php+mysql搭建个人私有云

Centos7.1 1053最小化安装lnmp通过yum安装,由于Centos7没有mysql的yum源,所以要自己安装mysql的yum源,但是安装上了,在我这yum安装只有几十K的速度,所以干脆去yum源里下载了mysql-server的rpm包,然后通过yum安装的rpm包,省了不少时间,lnmp的搭建这里就不再多说了,记着关闭selinux不然会提示File not found. 一.下载owncloud并解压的网站目录 [[email protected] ~]# axel https

CentOS 7上搭建Docker环境

一.Docker介绍和安装 http://linux.cn/article-4340-1.html Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且可以扩展到成千上万的节点. 容器和 VM(虚拟机)的主要区别是,容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离.虚拟机可能需要一分钟来启动,而容器只需要一秒钟或更短.容器使用宿主操作系统的内核