CentOS7下NextCloud搭建

搭建前準備工做:關閉selinux,關閉防火牆php

1、 LAMP環境搭建

1. Apache搭建html


yum install httpd –ymysql

clip_image001_thumb4

開啓apache服務,設爲開機自啓linux

systemctl start httpdgit

systemctl enable httpdgithub

clip_image002_thumb2

驗證,查看80端口以及測試頁是否正常web

clip_image003_thumb1

clip_image005_thumb1

apache搭建成功。redis

2. mysql搭建(mariadb)sql

yum install mariadb mariadb-server mariadb-devel -y數據庫

clip_image006_thumb2

開啓mariadb服務,設爲開機自啓

systemctl start mariadb

systemctl enable mariadb

clip_image007_thumb1

clip_image008_thumb1

進行初始化操做:

mysql_secure_installation

設置root密碼

clip_image009_thumb1

刪除匿名用戶;禁止root管理員從遠程登陸;移除測試數據庫,取消訪問權限;刷新受權,使當即生效。

clip_image010_thumb1

使用設定的密碼登陸數據庫

clip_image011_thumb1

查看如今現有數據庫:

show databases;

clip_image012_thumb1

新建nextcloud的數據庫,取名爲nextcloud_db

clip_image013_thumb1

再次查看現有數據庫:

clip_image014_thumb1

對nextcloud_db進行受權,容許用戶經過root訪問172.21.0.13的nextcloud_db數據庫的全部表,密碼爲123.com

clip_image016_thumb1

刷新受權表,使生效

clip_image017_thumb1

查看mysql數據庫下的user表,查看主機172.21.0.13狀態

clip_image018_thumb1

退出,從新登陸測試

clip_image019_thumb1

mysql(mariadb)搭建完成。

3. php搭建

經過yum直接安裝的php版本爲5.x,而nextcloud要求的php版本最低要求爲7.0,因此php須要特別處理安裝,一是經過下載php7.0的安裝包,源碼安裝,較複雜,耗時較長;另外一個是增長php7.0的yum源,經過yum一鍵安裝,現經過yum安裝測試。

安裝php7.0的yum源

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

clip_image021_thumb1

安裝php7.0及nextcloud所需php組件:

yum install -y php70w php70w-devel php70w-pear php70w-pecl php70w-gd php70w-opcache php70w-cli php70w-pdo php70w-process php70w-pecl-apcu php70w-mcrypt php70w-mysql php70w-fpm php70w-pecl-redis php70w-common php70w-xml php70w-mbstring php70w-pecl-igbinary php70w-intl php70w-pecl-imagick

clip_image023_thumb1

在html配置裏添加一段配置,讓apache可以解析html裏的PHP代碼

clip_image024_thumb1

在apache網站目錄裏新建測試PHP,測試PHP可用性。

clip_image025_thumb1

重啓httpd服務

clip_image026_thumb1

驗證PHP:瀏覽器中輸入 172.21.0.13/test.php

clip_image028_thumb1

clip_image029_thumb1

php版本爲7.0.33,php搭建完畢,lamp環境搭建完畢!

2、 nextcloud安裝

訪問nextcloud官網,下載nextcloud

提供三種方式安裝,現選擇第二種,經過web方式

clip_image030_thumb1

將下載下的web安裝的php腳本放到apache的網站目錄下:

clip_image031_thumb1

瀏覽器訪問:172.21.0.13/setup-nextcloud.php

出現安裝界面,提示它將會作三步:檢查軟件依賴;下載nextcloud;安裝nextcloud

next,下一步進行;

clip_image032_thumb1

提示沒法寫入文件,將apache網站目錄歸屬給apache用戶和組

clip_image033_thumb1 clip_image034_thumb1

從新刷新網頁,默認的nextcloud目錄名,next繼續;

clip_image035_thumb1

提示已經安裝,網站目錄下已有nextcloud目錄,next繼續;

clip_image036_thumb1

clip_image037_thumb1

若是不須要mysql數據庫,nextcloud會使用splite做爲數據庫,安裝已經完成

現使用mariadb數據庫,還需多配置一步:

點擊存儲&數據庫

clip_image038_thumb1

配置數據庫,安裝完成。

clip_image039_thumb1

進入nextcloud

clip_image041_thumb1

數據存放到mariadb中的nextcloud_db中

clip_image042_thumb1

nextcloud搭建完成!!!

登陸地址:172.21.0.13/nextcloud

用戶名:admin

密碼:123.com

3、 擴展:增長redis,提升性能,減小mysql壓力

redis安裝:

下載redis:wget http://download.redis.io/releases/redis-2.8.13.tar.gz

clip_image044_thumb1

解壓:tar xf redis-2.8.13.tar.gz

clip_image045_thumb1

進入目錄:cd redis-2.8.13

安裝:make PREFIX=/usr/local/redis install

clip_image046_thumb1

模板配置文件複製:cp redis.conf /usr/local/redis

clip_image047_thumb1

/root/.bash_profile添加如下1行內容:

export PATH=/usr/local/redis/bin:$PATH

clip_image048_thumb1


修改redis配置文件redis.conf

#daemonize no 默認狀況下,redis不是在後臺運行的,若是須要在後臺運行,把該項的值更改成yes

daemonize yes

clip_image049_thumb

#pid文件

pidfile /usr/local/redis/redis_zzk.pid

clip_image050_thumb1

#日誌文件

logfile /usr/local/redis/redis_zzk.log

clip_image051_thumb1

#本地持久化數據庫文件名,默認值爲 dump.rdb

dbfilename dump_zzk.rdb

clip_image052_thumb1

#工做目錄,注意這裏必須制定一個目錄而不是文件

dir /usr/local/redis/

clip_image053_thumb1

啓動redis:

redis-server /usr/local/redis/redis.conf

clip_image054_thumb1

查看啓動狀況

clip_image055_thumb1

PHP添加Redis擴展

要確保PHP代碼可以鏈接Redis,須要添加Redis擴展程序

下載軟件:

wget https://github.com/phpredis/phpredis/archive/3.1.2.tar.gz

解壓軟件:

tar xf 3.1.2.tar.gz

進入目錄:

cd phpredis-3.1.2/

執行phpize生成編譯文件:

/usr/bin/phpize

clip_image056_thumb1

配置、編譯、安裝:

./configure --with-php-config=/usr/bin/php-config --enable-redis && make && make install

修改php.ini配置文件,加載redis.so模塊

extension_dir = "/usr/lib64/php/modules/"

extension=redis.so

clip_image057_thumb1

重啓httpd服務器,測試phpinfo文件,檢查redis模塊:

clip_image059_thumb1

設置redis密碼

clip_image060_thumb1

測試鏈接:

使用Redis Desktop Manager工具測試鏈接

clip_image061_thumb1

目前沒有任何數據:

clip_image062_thumb1

添加配置信息到config.php:

進入Nextcloud裏的config文件夾:

cd /var/www/html/nextcloud/config/

vim config.php

在);前添加如下內容

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

'redis' => array(

'host' => 'localhost',

'port' => 6379,

),

clip_image063_thumb1

重啓redis:

redis-cli -p 6379 -a 123.com shutdown

redis-server /usr/local/redis/redis.conf

clip_image064_thumb1

重啓apache,查看redis:

clip_image065_thumb1

隨意點擊nextcloud幾個菜單,再查看redis:

clip_image066_thumb1

命令行界面效果同樣:

clip_image068_thumb1

rdb文件、log文件、pid文件正常,redis根據規則從內存寫入到本地硬盤的dump_zzk.rdb文件中。

clip_image069_thumb5

相關文章
相關標籤/搜索