CentOS7下NextCloud搭建

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

一、 LAMP環境搭建

1. Apache搭建


yum install httpd –y

clip_image001_thumb4

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

systemctl start httpd

systemctl enable httpd

clip_image002_thumb2

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

clip_image003_thumb1

clip_image005_thumb1

apache搭建成功。

2. mysql搭建(mariadb)

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環境搭建完畢!

二、 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

三、 擴展:增加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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章