搭建前準備工做:關閉selinux,關閉防火牆php
1. Apache搭建html
yum install httpd –ymysql
開啓apache服務,設爲開機自啓linux
systemctl start httpdgit
systemctl enable httpdgithub
驗證,查看80端口以及測試頁是否正常web
apache搭建成功。redis
2. mysql搭建(mariadb)sql
yum install mariadb mariadb-server mariadb-devel -y數據庫
開啓mariadb服務,設爲開機自啓
systemctl start mariadb
systemctl enable mariadb
進行初始化操做:
mysql_secure_installation
設置root密碼
刪除匿名用戶;禁止root管理員從遠程登陸;移除測試數據庫,取消訪問權限;刷新受權,使當即生效。
使用設定的密碼登陸數據庫
查看如今現有數據庫:
show databases;
新建nextcloud的數據庫,取名爲nextcloud_db
再次查看現有數據庫:
對nextcloud_db進行受權,容許用戶經過root訪問172.21.0.13的nextcloud_db數據庫的全部表,密碼爲123.com
刷新受權表,使生效
查看mysql數據庫下的user表,查看主機172.21.0.13狀態
退出,從新登陸測試
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
安裝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
在html配置裏添加一段配置,讓apache可以解析html裏的PHP代碼
在apache網站目錄裏新建測試PHP,測試PHP可用性。
重啓httpd服務
驗證PHP:瀏覽器中輸入 172.21.0.13/test.php
php版本爲7.0.33,php搭建完畢,lamp環境搭建完畢!
訪問nextcloud官網,下載nextcloud
提供三種方式安裝,現選擇第二種,經過web方式
將下載下的web安裝的php腳本放到apache的網站目錄下:
瀏覽器訪問:172.21.0.13/setup-nextcloud.php
出現安裝界面,提示它將會作三步:檢查軟件依賴;下載nextcloud;安裝nextcloud
next,下一步進行;
提示沒法寫入文件,將apache網站目錄歸屬給apache用戶和組
從新刷新網頁,默認的nextcloud目錄名,next繼續;
提示已經安裝,網站目錄下已有nextcloud目錄,next繼續;
若是不須要mysql數據庫,nextcloud會使用splite做爲數據庫,安裝已經完成
現使用mariadb數據庫,還需多配置一步:
點擊存儲&數據庫
配置數據庫,安裝完成。
進入nextcloud
數據存放到mariadb中的nextcloud_db中
nextcloud搭建完成!!!
登陸地址:172.21.0.13/nextcloud
用戶名:admin
密碼:123.com
redis安裝:
下載redis:wget http://download.redis.io/releases/redis-2.8.13.tar.gz
解壓:tar xf redis-2.8.13.tar.gz
進入目錄:cd redis-2.8.13
安裝:make PREFIX=/usr/local/redis install
模板配置文件複製:cp redis.conf /usr/local/redis
/root/.bash_profile添加如下1行內容:
export PATH=/usr/local/redis/bin:$PATH
修改redis配置文件redis.conf
#daemonize no 默認狀況下,redis不是在後臺運行的,若是須要在後臺運行,把該項的值更改成yes
daemonize yes
#pid文件
pidfile /usr/local/redis/redis_zzk.pid
#日誌文件
logfile /usr/local/redis/redis_zzk.log
#本地持久化數據庫文件名,默認值爲 dump.rdb
dbfilename dump_zzk.rdb
#工做目錄,注意這裏必須制定一個目錄而不是文件
dir /usr/local/redis/
啓動redis:
redis-server /usr/local/redis/redis.conf
查看啓動狀況
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
配置、編譯、安裝:
./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
重啓httpd服務器,測試phpinfo文件,檢查redis模塊:
設置redis密碼
測試鏈接:
使用Redis Desktop Manager工具測試鏈接
目前沒有任何數據:
添加配置信息到config.php:
進入Nextcloud裏的config文件夾:
cd /var/www/html/nextcloud/config/
vim config.php
在);前添加如下內容
'memcache.local' => '\OC\Memcache\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
),
重啓redis:
redis-cli -p 6379 -a 123.com shutdown
redis-server /usr/local/redis/redis.conf
重啓apache,查看redis:
隨意點擊nextcloud幾個菜單,再查看redis:
命令行界面效果同樣:
rdb文件、log文件、pid文件正常,redis根據規則從內存寫入到本地硬盤的dump_zzk.rdb文件中。