1. 程式人生 > >Centos7.2 搭建Apache+Php+Mysql環境

Centos7.2 搭建Apache+Php+Mysql環境

1、概述

    本部落格原搭建在Windows Server 2012 伺服器上,直接使用了Appserv一鍵搭建的環境。

    當前網站架構:

    02

    但是後來學習Docker等一些依賴Linux的的技術(雖然可以用虛擬機器,但是Winserver換到Linux又不難),就決定乾脆用Linux當伺服器吧。

    01

    Linux也順理成章選擇了Centos 7.2,下面就演示這一過程。

2、資料備份

    原部落格的資料是一定要儲存的,主要就是檔案和資料庫,因為應用於資料並沒有分離,檔案就在網站目錄內,所以直接將網站根目錄打壓縮包備份到本地。

    資料庫直接使用工具匯出為sql檔案即可,恢復起來也是特別方便。

3、程式安裝

    因為本人為雲伺服器,Centos 的安裝也是全自動的(本地安裝也簡單),此處就不多說了。

    本文預設大家使用root使用者登入,如果執行下面命令碰到許可權不足時,請新增“sudo ”到命令最前面。

    在安裝程式前,先執行更新(升級所有包同時也升級軟體和系統核心):

  1. yum update

    3.1、資料庫

    本人使用的資料庫之前是MySQL,但因為從Centos 7.0開始,預設支援的是mariaDB,而且mariaDB幾乎是完全相容MySQL的,所以本人就選擇使用mariaDB,而MySQL的安裝和使用也幾乎是相同的。

    MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社群在維護,採用GPL授權許可 MariaDB的目的是完全相容MySQL,包括API和命令列,使之能輕鬆成為MySQL的代替品。在儲存引擎方面,使用XtraDB(英語:XtraDB)來代替MySQL的InnoDB。

    安裝:

  1. yum install mariadb mariadb-server

    安裝過程會顯示需要的空間,並詢問是否繼續,輸入“y”即可,之後的其他程式安裝也會有類似提示,此處統一說明。

    啟動:

  1. systemctl start mariadb

    設定自啟動:

  1. mariadb systemctl enable mariadb

    設定資料庫root使用者密碼:

  1. mysql_secure_installation

    根據提示,設定好資料庫root使用者密碼即可(預設密碼為空,直接回車就可以開始設定密碼了)。

    可以登入到資料庫測試是否安裝成功:

  1. mysql -uroot -ppassword

    至此,資料庫安裝成功。

    3.2、Apache

    安裝過程比較簡單。

    安裝:

  1. yum install httpd

    其他可能會用到的命令,此處一次給出:

  1. systemctl start httpd.service #啟動
  2. apache systemctl stop httpd.service #停止
  3. apache systemctl restart httpd.service #重啟
  4. apache systemctl enable httpd.service #設定apache開機啟動

    Apache安裝並啟動後,就可以輸入“http://127.0.0.1”測試了,在控制檯可以通過wget命令:

  1. wget http://127.0.0.1

    如果安裝正確,會得到預設首頁的html程式碼。

    3.3、Php

    因為本人部落格使用的是TypeCho,所以需要Php執行環境。

    安裝:

  1. yum install php

    為了使Php支援MySQL等,還需要安裝其他外掛:

  1. yum install php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash

    完成後,就可以將部落格的資料恢復到環境中來。

4、恢復資料

    4.1 SSH

    為了方便管理Linux伺服器,SSH工具必不可少,首先要在伺服器(Linux)安裝SSH工具。

    安裝SSH:

  1. yum install ssh

    其他命令:

  1. service sshd start #啟動服務
  2. chkconfig sshd on#設定自啟動

    4.2、上傳網頁和檔案

    然後本地(一般是windows,比較時我們辦公的電腦)安裝SSH管理客戶端,本人使用的是SSH Secure,請自行下載安裝。

    安裝好後使用 SSH Secure File Transfer Client 程式(驗證一般是Linux的使用者和密碼),將我們備份的網站資料解壓後上傳到伺服器對應目錄中。

    如果Apache是預設安裝,網站根目錄應該是:“/var/www/html”,直接上傳整個原網站的檔案到這個目錄下即可。

    4.3、恢復資料庫資料

    同樣的,使用SSH客戶端將備份的SQL上傳到Centos 伺服器的某個目錄下,然後通過命令列恢復資料,我們要手動建立資料庫,注意編碼的設定,以免造成中文亂碼。

    整個命令如下:

  1. mysql -uroot -ppassword;
  2. create database db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
  3. mysql->use db_name;
  4. mysql->set names utf8;
  5. mysql->source mydb.sql;

    可以檢視恢復的表:

  1. show tables;

    然後退出mysql命令列:exit。

5、完事兒

    此時重啟Apache伺服器,以保住修改生效。可以試著訪問部落格,應該是沒有問題的。

    不知道是不是心理作用,我感覺部落格比換系統之前用來去更順手了 O(∩_∩)O 。

    雖然我知道完全沒有必要,但我正計劃“改進”部落格的網站架構,將資料庫服務、檔案服務、和應用服務分別使用Docker獨立部署,並在前面新增一個nginx做反向代理伺服器。也算是實踐吧,總結一下學的東西總是好的,畢竟另外一臺無公網IP但與當前這臺內網相通的伺服器已經租好了~~~~(>_<)~~~~。