亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    CentOS7 搭建NextCloud私有云盤

    由于公司需要安裝了私有云盤,并且強制要求使用MySQL,我進行了編譯安裝,大多數(shù)文章安裝在/目錄下,由于/目錄太小,我掛載了一塊磁盤,安裝在掛載磁盤上。后續(xù)還有數(shù)據(jù)安全等操作,以后會持續(xù)更新

    一、環(huán)境說明

    • CentOS 7以上
    • SELinux關(guān)閉
    • 防火墻關(guān)閉

    二、安裝Nginx

    添加EPEL包的倉庫源
    yum -y install epel-release
    通過EPEL倉庫來安裝Nginx
     yum -y install nginx

    三、安裝PHP7和PHP7-FPM

    卸載原有php

    yum list installed | grep php

    yum remove `yum list installed | grep php`

    添加 PHP7-FPM webtatic 倉庫,并安裝PHP7以及功能相關(guān)的包

    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

    yum -y install php70w-fpm php70w-cli php70w-gd php70w-mcrypt php70w-mysql php70w-pear php70w-xml php70w-mbstring php70w-pdo php70w-json php70w-pecl-apcu php70w-pecl-apcu-devel

    四、配置PHP-FPM

    我們需要配置 php-fpm 與 Nginx 協(xié)同運行。php7-fpm 將使用 nginx 用戶來運行,并監(jiān)聽 9000 端口。
     使用 vim 編輯默認的 php7-fpm 配置文件。

    vim /etc/php-fpm.d/www.conf

    修改以下不連續(xù)的記錄點,修改用戶,指定端口,啟用環(huán)境變量。

    #Line 8,10

    user = nginx

    group = nginx

    #Line 22

    listen = 127.0.0.1:9000

    #Line 366-370

    env[HOSTNAME] = $HOSTNAME

    env[PATH] = /usr/local/bin:/usr/bin:/bin

    env[TMP] = /tmp

    env[TMPDIR] = /tmp

    env[TEMP] = /tmp

    保存文件并退出 vim 編輯器.

    需要在 /var/lib/ 目錄下創(chuàng)建一個新的文件夾 session,并將其擁有者變更為 nginx 用戶。最后啟動 php-fpm 和 Nginx,并且將它們設(shè)置為隨開機啟動的服務(wù)。(不創(chuàng)建授權(quán)無法登錄)

    mkdir -p /var/lib/php/session

    chown nginx:nginx -R /var/lib/php/session/

    sudo systemctl start php-fpm

    sudo systemctl start nginx

    sudo systemctl enable php-fpm

    sudo systemctl enable nginx

    五、二進制安裝數(shù)據(jù)庫MySQL5.6.40

    1.添加用戶

    useradd -s /sbin/nologin -M mysql

    2.下載去官網(wǎng)

    cd /usr/local/src

    3.解壓

    tar xf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz

    mv  mysql-5.6.40-linux-glibc2.12-x86_64  ./../mysql

    4.授權(quán)

    mkdir -p /usr/local/mysql/data

    cd /usr/local

    chown -R mysql:mysql mysql

    5.初始化

    /usr/local/scripts/mysql_install_db  –user=mysql –basedir=/usr/local/mysql  –datadir=/usr/local/mysql/data

    mkdir -p /var/lib/mysql

    chmod 777 /var/lib/mysql

    6.準備配置文件

    cd /usr/local/mysql

    cp support-files/my-default.cnf  /etc/my.cnf
     cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld
     chmod +x /etc/init.d/mysqld

    修改mysql配置文件

    vim /etc/my.conf

    [mysqld]

    basedir = /usr/local/mysql

    datadir = /usr/local/mysql/data

    socket = /var/lib/mysql/mysql.sock

    user = mysql

    symbolic-links=0

    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

    [mysqld_safe]

    log-error = /usr/local/mysql/data/error.log

    pid-file = /usr/local/mysql/data/mysql.pid

    7.啟動MySQL

    /etc/init.d/mysqld start

    8.設(shè)置PATH路徑

    echo ‘export PATH=/usr/local/mysql/bin:$PATH’ >>/etc/profile
     source /etc/profile
     which mysql

    9.設(shè)置sock軟鏈接

    ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock

    ll /tmp/

    10.設(shè)置密碼

    /usr/local/mysql/bin/mysqladmin -u root password ‘waming@2030’

    mysql -uroot -pwaming@2030

    六、設(shè)置nextcloud數(shù)據(jù)庫

    mysql -u root -p123456

    輸入以下 mysql 語句來創(chuàng)建新的數(shù)據(jù)庫和用戶。

    create database nextcloud_db;

    create user ‘nextclouduser’@’localhost’ identified by ‘123456’;

    grant all privileges on nextcloud_db.* to nextclouduser@localhost identified by ‘123456’;

    flush privileges;

    exit

    七、安裝SSL證書

    我們可以自己生成SSL證書,也可以申請專業(yè)的SSL證書。
     自簽名的SSL證書在使用的時候會報錯,建議使用有資質(zhì)的SSL證書。
     安裝過程如下:
     為 SSL 文件創(chuàng)建新目錄:

    mkdir -p /etc/nginx/cert/

    可以使用OpenSSL自簽名證書,但是更推薦使用具有官方認證的SSL證書

    openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/cloud.example.com.crt -keyout /etc/nginx/cert/cloud.example.com.key

    在該目錄下儲存申請過的SSL證書,并設(shè)置證書的權(quán)限:

    chmod 700 /etc/nginx/cert

    chmod 600 /etc/nginx/cert/*

    八、下載和初步安裝 Nextcloud

    找到正確的官方下載庫:https://download.nextcloud.com/server/releases/

    先進入目錄,然后使用 wget 從官網(wǎng)下載最新的 Nextcloud 13。

    cd /usr/local/src

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

    unzip nextcloud-13.0.2.zip

    mv nextcloud /u01/

    cd /u01/nextcloud

    mkdir data

    cd ..

    chown nginx:nginx -R nextcloud/

     

    九、配置Nginx轉(zhuǎn)發(fā)規(guī)則

    我們需要在Nginx的配置文件下寫入有關(guān)nextcloud的轉(zhuǎn)發(fā)協(xié)議。
     我們可以直接新建一個配置文件并寫入信息,當Nginx重新加載后就能使用配置文件了。

    cd /etc/nginx/conf.d/

    vim nextcloud.conf

    [mysqld]

    basedir = /usr/local/mysql

    datadir = /usr/local/mysql/data

    socket = /var/lib/mysql/mysql.sock

    user = mysql

    symbolic-links=0

    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

    [mysqld_safe]

    log-error = /usr/local/mysql/data/error.log

    pid-file = /usr/local/mysql/data/mysql.pid

    [root@nextcloud-master local]# cat /etc/nginx/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 localhost;

      # enforce https

      rewrite ^(.*)$ https://$host$1 permanent;

    }

    server {

      listen 443 ssl;

      server_name localhost;

      ssl_certificate /etc/nginx/cert/cloud.example.com.crt;

      ssl_certificate_key /etc/nginx/cert/cloud.example.com.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 /u01/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 10240M;

      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;

      }

    }

    vim /etc/nginx/nginx.conf

    路徑更換,也許不用更換也可以,我沒有嘗試

    CentOS7 搭建NextCloud私有云盤

    注銷38-57行

    CentOS7 搭建NextCloud私有云盤

    重啟nginx

    systemctl restart nginx

    十、登錄

    登錄輸入你自己的主機IP即可設(shè)置進入設(shè)置界面

    CentOS7 搭建NextCloud私有云盤

    也可以使用Mariadb,下邊是安裝配置方法

    這里使用 MariaDB 作為 Nextcloud 的數(shù)據(jù)庫??梢灾苯邮褂?yum 命令從 CentOS 默認遠程倉庫中安裝 mariadb-server包。也可以安裝mysql都可以

    yum -y install mariadb mariadb-server

    systemctl start mariadb

    systemctl enable mariadb

    ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

    mkdir -p /var/lib/mysql

    使用MySQL初始化指令初始化root用戶,默認密碼為空。

    mysql_secure_installation

    #配置過程

    Set root password? [Y/n] Y

    New password:

    Re-enter new password:

    Remove anonymous users? [Y/n] Y

    Disallow root login remotely? [Y/n] Y

    Remove test database and access to it? [Y/n] Y

    Reload privilege tables now? [Y/n] Y

    先使用命令登錄MySQL

    mysql -u root -p

    輸入以下 mysql 查詢語句來創(chuàng)建新的數(shù)據(jù)庫和用戶。

    create database nextcloud_db;

    create user ‘nextclouduser’@’localhost’ identified by ‘123456’;

    grant all privileges on nextcloud_db.* to nextclouduser@localhost identified by ‘123456’;

    flush privileges;

    exit

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號