Centos 6.* 安装部署nextcloud 私有云

作者: TestyOM_ | 来源:发表于2017-06-22 13:53 被阅读2406次

    一:环境介绍

    1.操作系统:centos 6.*( 双核4G、硬盘至少20G)

    2.后台环境:lnmp

    二:部署nextcloud私有云

    1.部署安装lnmp环境

    可转致 http://www.jianshu.com/p/d9f33d1189d8进行lnmp的安装和部署

    2.官网下载nextcloud程序

    https://nextcloud.com/install/

    上传nextcloud-12.0.0.zip到centos 6.*

    mv nextcloud-12.0.0.zip /opt
    cd /opt
    unzip nextcloud-12.0.0.zip #(如果unzip命令不存在,则执行 yum install unzip -y 安装unzip命令)
    chown nobody.nobody -R nextcloud
    

    至此nextcloud程序准备完毕

    3.配置nginx

    vim /usr/local/nginx/conf/conf.d/nextcloud.conf

    upstream php-handler {
        server 127.0.0.1:9000;
        #server unix:/var/run/php5-fpm.sock;
    }
    server {
        listen 80;
        server_name nextcloud.test.com;#(写入你的域名)
        # enforce https
        return 301 https://$server_name$request_uri;
    }
    server {
        listen 443 ssl;
        server_name nextcloud.test.com;#(写入你的域名)
    
    
        ssl_certificate /usr/local/nginx/ssl/server.pem;
        ssl_certificate_key /usr/local/nginx/ssl/server.key;
    
        # Add headers to serve security related headers
        # Before enabling Strict-Transport-Security headers please read into this
        # topic first.
        add_header Strict-Transport-Security "max-age=15768000;
        includeSubDomains; preload;";
        add_header X-Content-Type-Options nosniff;
        #add_header X-Frame-Options SAMEORIGIN;
        add_header X-XSS-Protection "1; mode=block";
        add_header X-Robots-Tag none;
        add_header X-Download-Options noopen;
        add_header X-Permitted-Cross-Domain-Policies none;
        # Path to the root of your installation
        root /opt/nextcloud/;
        location = /robots.txt {
            allow all;
            log_not_found off;
            access_log off;
        }
        # The following 2 rules are only needed for the user_webfinger app.
        # Uncomment it if you're planning to use this app.
        #rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
        #rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json
        # last;
        location = /.well-known/carddav {
          return 301 $scheme://$host/remote.php/dav;
        }
        location = /.well-known/caldav {
          return 301 $scheme://$host/remote.php/dav;
        }
        # set max upload size
        client_max_body_size 512M;
        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;
        error_page 403 /core/templates/403.php;
        error_page 404 /core/templates/404.php;
        location / {
            rewrite ^ /index.php$uri;
        }
        location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
            deny all;
        }
        location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
            deny all;
        }
        location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+|core/templates/40[34])\.php(?:$|/) {
            include fastcgi_params;
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
            fastcgi_param HTTPS on;
            #Avoid sending the security headers twice
            fastcgi_param modHeadersAvailable true;
            fastcgi_param front_controller_active true;
            fastcgi_pass php-handler;
            fastcgi_intercept_errors on;
            fastcgi_request_buffering off;
        }
        location ~ ^/(?:updater|ocs-provider)(?:$|/) {
            try_files $uri/ =404;
            index index.php;
        }
        # Adding the cache control header for js and css files
        # Make sure it is BELOW the PHP block
        location ~* \.(?:css|js)$ {
            try_files $uri /index.php$uri$is_args$args;
            add_header Cache-Control "public, max-age=7200";
            # Add headers to serve security related headers (It is intended to
            # have those duplicated to the ones above)
            # Before enabling Strict-Transport-Security headers please read into
            # this topic first.
            add_header Strict-Transport-Security "max-age=15768000;
            includeSubDomains; preload;";
            add_header X-Content-Type-Options nosniff;
            add_header X-Frame-Options "SAMEORIGIN";
            add_header X-XSS-Protection "1; mode=block";
            add_header X-Robots-Tag none;
            add_header X-Download-Options noopen;
            add_header X-Permitted-Cross-Domain-Policies none;
            # Optional: Don't log access to assets
            access_log off;
        }
        location ~* \.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg)$ {
            try_files $uri /index.php$uri$is_args$args;
            # Optional: Don't log access to other assets
            access_log off;
        }
    }
    

    防火墙打开80和443端口

    重启nginx

    killall nginx
    /usr/local/nginx/sbin/nginx
    

    4.mysql 配置

    在 [ mysqld ] 下添加下列三行

    innodb_large_prefix = on 
    innodb_file_format = barracuda 
    innodb_file_per_table = true
    

    重启mysql

    /etc/init.d/mysqld restart
    

    mysql -uroot -p 进入mysql创建一个nextcloud库

    CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
    

    5.开始nextcloud私有云的安装

    浏览器域名https://nextcloud.test.com访问 :新建用户密码、数据库连接
    点击安装完成 即可进入nextcloud
    看到下列页面表示nextcloud安装完成
    点击右上角处齿轮进入管理界面
    此处的“安全及设置警告”不影响正常使用

    相关文章

      网友评论

      • yhyok:初始化的时候 提示报错 Error
        Can't create or write into the data directory /data
        是怎么回事?

      本文标题:Centos 6.* 安装部署nextcloud 私有云

      本文链接:https://www.haomeiwen.com/subject/uhhfcxtx.html