企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

LAMP平臺概述

LAMP架構是目前成熟的企業網站應用模式之一,指的是協同工做的一整套系統和相關軟件,可以提供動態Web站點服務及其應用開發環境。LAMP是一個縮寫詞,具體包括 Linux操做系統、 Apache網站服務器、MSQL數據庫服務器、PHP(或Perl、 Python)網頁編程語言。php

LAMP平臺的構成組件

在LAMP平臺的四個構成組件中,每個組件都承擔着一部分關鍵應用。通過十幾年的發展,各組件間的兼容性獲得了不斷的完善,協做能力和穩定性也不斷加強,能夠構建出很是優秀的Web應用系統。各組件的主要做用以下:前端

linux操做系統: 做爲LAMP架構的基礎,提供用於支撐Web站點的操做系統,可以與其餘三個組件提供更好的穩定性、兼容性(LAMP組件也支Windows、UNIX等操做系統)。mysql

Apache網站服務器: 做爲LAMP架構的前端,是一款功能強大、穩定性好的Web服務器程序,該服務器直接面向用戶提供網站訪問,發送網頁、圖片等文件內容。linux

MYSQL數據庫服務器: 做爲LAMP架構的後端,是一款流行的開源關係數據庫系統。在企業網站、業務系統等應用中,各類帳戶信息、產品信息、客戶資料、業務數據等均可以存儲到 MySQL數據庫,其餘程序能夠經過SQL語句來查詢、更改這些信息。c++

PHP/Perl/Python網頁編程語言:做爲三種開發動態網頁的編程語言,負責解釋動態網頁文件,並提供web應用程序的開發和運行環境。其中,PHP是一種被普遍應用的開放源代碼的多用途腳本語言,它能夠嵌入到HTML中,尤爲適合於Web應用開發。程序員

LAMP平臺應用優點

構成LAMP平臺的四個組件,每個組件都經歷了數十年之久的企業應用的考驗,各自都是同類軟件中的佼佼者,從而成爲典型的「黃金搭檔」。其主要優點體如今如下幾個方面:
● 成本低廉: 構成組件都是開放源代碼的軟件,能夠自由得到和無償使用,在技術上和許可證 方面沒有太嚴格的限制,大大下降了企業的實施成本。
● 可定製: 擁有大量的額外組件和可擴展功能的模塊,可以知足大部分企業應用的定製需求, 甚至能夠自行開發、添加新的功能。
● 易於開發:基於LAMP平臺的動態網站中,頁面代碼簡潔,與HTML標記語言的結合度很是 好,即便是非專業的程序員也可以輕鬆讀懂乃至修改網頁代碼。
● 方便易用:PHP、Perl等屬於解釋性語言,開發的各類Web程序不須要編譯,方便進行移植 使用。整套的網站項目程序,一般只要複製到網站目錄中,就能夠直接訪問。
● 安全和穩定:得益於開源的優點,大量的程序員在關注並持續改進LAMP平臺的各個組件, 發現的問題可以很快獲得解決。LAMP架構已經歷了數十年的驗證,在安全性和穩定性方 面表現得很是優秀。web

實驗環境

操做系統:CentOS 7
服務器IP地址:192.168.65.173
宿主機IP地址:192.168.65.160
軟件包連接:https://pan.baidu.com/s/1dS3e7ORbLC2KkGiyBe06iw
提取碼:20cusql

實驗目標

安裝Apache服務器
安裝Mysql數據庫
安裝PHP
搭建Discuz論壇數據庫

實驗步驟

搭建順序

在構建LAMP平臺時,各組件的安裝順序依次爲 Linux、 Apache、 MySQL、PHP。其中 Apache和 MySQL的安裝並無嚴格的順序;而PHP環境的安裝通常放到最後,負責溝通Web服務器和數據庫系統以協同工做。apache

Apache 簡介

Apache Http Server是開源軟件項目的傑出表明,基於標準的HTTP網絡協議提供網頁瀏覽服務,在Web服務器領域中長期保持着超過半數的份額。 Apache服務器能夠運行在 Linux、UNIX、 Windows 等多種操做系統平臺中。

1、安裝apache服務

1 .解壓各類軟件包

tar xf apr-1.6.2.tar.gz -C /opt
tar xf apr-util-1.6.0.tar.gz -C /opt
tar jvxf httpd-2.4.29.tar.bz2 -C /opt
mv apr-1.6.2 httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

2.安裝編譯環境工具

yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

3 .編譯安裝

cd /opt/httpd-2.4.29
./configure \
--prefix=/usr/local/httpd \ #指定安裝目錄
--enable-so \ #啓用動態加載模塊支持
--enable-rewrite \ #啓用網頁地址重寫功能,實現僞靜態
--enable-charset-lite \ #啓動字符集支持,以便支持使用各類字符集編碼的網頁
--enable-cgi #啓用CGI腳本程序支持(通用網關接口)
make && make install #編譯安裝

4.添加系統服務

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #將啓動腳本拷貝服務程序目錄下
vim /etc/init.d/httpd #修改啓動腳本
#chkconfig: 35 85 21 #35級別自動運行 第85個啓動 第21個關閉
#description: Apache is a World Wide Web server.

5.修改配置文件

vim /usr/local/httpd/conf/httpd.conf
ServerName www.yun.com:80 #填寫徹底主機名
Listen 192.168.65.173:80 #監聽本地IP

6.優化服務

ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd #優化配置文件路徑
ln -s /usr/local/httpd/bin/* /usr/local/bin/ #優化命令路徑
chkconfig --add httpd #將httpd加入到service管理器

7.重啓服務,關閉防火牆

systemctl stop firewalld.service
setenforce 0
systemct httpd start
netstat -anpt | grep 「:80」

企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

8.去網頁測試Apache網頁
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

MySQL簡介

MySQL是一個真正的多線程、多用戶的SQL數據庫服務,憑藉其高性能、高可靠和易於使用的特性,成爲服務器領域中最受歡迎的開源數據庫系統。在2008年之前, MySQL項目由 MySQL AB公司進行開發、發佈和支持,以後歷經Sun公司收購 MySQL AB公司, Oracle公司收購Sun公司的過程,目前 MySQL項目由 Oracle公司負責運營和維護。

2、安裝MYSQL數據庫

1.解壓軟件包,安裝編譯環境工具

yum -y install ncurses-devel bison libaio-devel cmake
tar xzvf mysql-5.6.26.tar.gz -C /opt

2.編譯安裝

cd /opt/mysql-5.6.26
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #軟件安裝位置
-DDEFAULT_CHARSET=utf8 \ #默認字符集
-DDEFAULT_COLLATION=utf8_general_ci \ #默認字符校驗
-DEXTRA_CHARSETS=all \ #額外的編碼,請使用all來編譯
-DSYSCONFIDIR=/etc \ #數據目錄
-DMYSQL_DATADIR=/home/mysql/ \ #指定mysql的運行用戶
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock
make && make install #編譯安裝

3.添加系統服務

cp support-files/mysql.server /etc/init.d/mysqld #添加系統服務
chmod 755 /etc/init.d/mysqld #添加執行權限
chkconfig --add /etc/init.d/mysqld #將mysqld添加爲系統服務
chkconfig mysqld --level 235 on #
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile #從新讀取系統環境變量
useradd -s /sbin/nologin mysql #建立進程用戶mysql
chown -R mysql:mysql /usr/local/mysql/ #修改mysql安裝目錄的全部者,所屬組

4.初始化數據庫

/usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql

5.創建軟鏈接

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

6.修改配置文件

cp support-files/my-default.cnf /etc/my.cnf 
vim /etc/init.d/mysqld
basedir=/usr/local/mysql 
datadir=/home/mysql

7.啓動服務

systemctl start mysqld
mysqladmin -u root password "abc123" //給數據庫root帳號設置密碼
netstat -anpt | grep 3306

企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

PHP簡介

PHP(外文名:PHP: Hypertext Preprocessor,中文名:超文本預處理器)是一種通用開源腳本語言。語法吸取了C語言、Java和Perl的特色,利於學習,使用普遍,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它能夠比CGI或者Perl更快速地執行動態網頁。用PHP作出的動態頁面與其餘的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比徹底生成HTML標記的CGI要高許多;PHP還能夠執行編譯後代碼,編譯能夠達到加密和優化代碼運行,使代碼運行更快。

3、安裝PHP

1.安裝編譯環境

yum -y install \
gd \
libpng \
libpng-devel \
pcre \
pcre-devel \
libxml2-devel \
libjpeg-devel

2.解壓軟件包

tar xjvf php-5.6.11.tar.bz2 -C /opt #解壓軟件包

3.編譯安裝

cd /opt/php-5.6.11 #進入編譯目錄下
./configure \
--prefix=/usr/local/php5 \ #安裝目錄
--with-gd \
--with-zlib \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-config-file-path=/usr/local/php5 \
--enable-mbstring
make && make install #編譯安裝

3.建立PHP配置文件

cp php.ini-development /usr/local/php5/php.ini

4.創建軟連接

ln -s /usr/local/php5/bin/ /usr/local/bin/ #優化命令路徑(軟鏈接)
ln -s /usr/local/php5/sbin/ /usr/local/sbin/

5.修改Apache配置文件

vim /etc/httpd.conf //
約143行檢查下面這條語句是否存在,
LoadModule php5_module modules/libphp5.so

企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

#約242行添加php首頁識別:
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】
#約348行添加支持PHP後綴:
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

6.添加PHP測試內容

vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>

7.重啓httpd服務,在網頁測試「http://192.168.65.173/index.php
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

Discuz 簡介

Crossday Discuz! Board(簡稱 Discuz!)是北京康盛新創科技有限責任公司推出的套通用的社區論壇軟件系統。自2001年6月面世以來, Discuz!已擁有15年以上的應用歷史和200多萬個網站用戶案例,是全球成熟度最高、覆蓋率最大的論壇軟件系統之一。目前最新版本 DIScuz!X3.2正式版於2015年6月9日發佈,首次引入應用中心的開發模式。

Discuz 優點

用戶能夠在不須要任何編程經驗的基礎上,經過簡單的設置和安裝,在互聯網上搭建起具有完善功能、很強負載能力和可髙度定製的論壇服務。 Discuz!的基礎架構採用世界上最流行的Web編程組合PHP+ MySQL實現,是一個通過完善設計,適用於各類服務器環境的高效論壇系統解決方案。

4、Discuz論壇安裝

一、建立相關數據庫
mysql -uroot -p123 #登陸mysql
mysql> create database bbs; #建立一個數據庫bbs
mysql> grant all on bbs.* To 'bbsuser'@'%' identified BY 'admin123'; #把bbs數據庫裏面全部表的權限授予給bbsuser,並設置密碼
mysql>flush privileges; #刷新數據庫

2.修改站點內容

vim /usr/local/httpd/htdocs/index.php
<?php
$link=mysql_connect('192.168.65.173','bbsuser','admin123');
if($link) echo "Success!!";
else echo "Fail!!";
mysql_close();
?>

3.在網頁測試鏈接數據庫
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

4.解壓論壇軟件包

mount.cifs //192.168.65.1/ww /abc #掛載共享文件
unzip Discuz_X2.5_SC_UTF8.zip -d /opt #解壓軟件包到/opt
mkdir -p /usr/local/httpd/htdocs/bbs/
cp -r /opt/upload/ /usr/local/httpd/htdocs/bbs/ #upload複製到站點目錄下

5.修改文件屬主

cd /usr/local/httpd/htdocs/bbs/
chown -R daemon ./config/
chown -R daemon ./data/
chown -R daemon ./uc_client/
chown -R daemon ./uc_server/data/
vim /usr/local/php5/php.ini
date.timezone = UTC #約927行,將註釋去掉,不然使用URL安裝會報錯

6.安裝論壇
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】
企業應用---部署LAMP平臺 + Discuz論壇【贈安裝包】

總結

● LAMP架構組件包括Linux操做系統、Mhe網站服務器、 MySQL數據庫服務器、PHP(或Perl、 Python)網頁編程語言。● htpd服務器的主配置文件是httpdconf,經過ncud配置項能夠加載其餘配置文件● hpd服務支持三種類型的虛擬Web主機,分別是基於域名、基於P地址、基於端口的虛擬主機。●安裝PHP軟件包時,經過-with-apxs二、-with- mysql配置選項分別可指定httd、 mysql的相關路徑。● 要使httd服務支持PHP網頁,應編輯htpd.conf文件,確認加載 libphp5.s0模塊,並添加「php」類型文件的識別● phpMyAdmin是一個使用PHP語言編寫,用來管理 MySQL數據庫的Web應用系統。● 安裝時必定要特別注意版本號,不一樣版本會出錯!