LAMP 平臺搭建詳解

LAMP 架構是目前成熟的企業網站應用模式之一,能夠提供動態 Web 站點服務及其應用開發環境。
LAMP 是一個縮寫詞,具體包括:
1、Linux 操作系統
2、Apache 網站服務器
3、MySQL 數據庫服務器
4、PHP/Perl/Python 網頁編程語言
這四個組件都是同類中的佼佼者,體現在:
1、成本低廉
2、可定製
3、易於開發
4、方便易用
5、安全和穩定
在構建 LAMP 平臺時,各組件的安裝順序依次爲:Linux、Apache、MySQL、PHP。其中 Apache 和 MySQL 的安裝沒有嚴格順序;PHP一般放在最後,負責溝通 web 服務器和數據庫系統。
https://blog.51cto.com/14227204/2424170 Apache 服務安裝
https://blog.51cto.com/14227204/2425596 MySQL 服務安裝(供參考,可自行選擇)
https://pan.baidu.com/s/1bvWgs6--P_ja2QNf6E7IrQ 安裝所需源碼包
提取碼: u3me
準備工作:
照舊先檢查一下系統當前有無 rpm 安裝的PHP包 rpm -qa | grep php ,如果有卸載掉
首先我們需要安裝幾個依賴包:

[root@mysql /]# mount /dev/sr0 /media/                    # 掛載系統光盤
mount: /dev/sr0 is write-protected, mounting read-only
[root@mysql /]# cd /media/Packages/
[root@mysql Packages]# rpm -ivh  zlib-devel-1.2.7-17.el7.x86_64.rpm 
xz-devel-5.2.2-1.el7.x86_64.rpm 
libxml2-devel-2.9.1-6.el7_2.3.x86_64.rpm 

安裝擴展工具庫,數據加密工具 libmcrypt、mhash、mcrypt 等
安裝 libmcrypt:

[root@mysql media]# tar zxf libmcrypt-2.5.8.tar.gz -C /usr/src/
[root@mysql media]# cd /usr/src/libmcrypt-2.5.8/
[root@mysql libmcrypt-2.5.8]# ./configure && make && make install     # 一氣呵成
[root@mysql libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.* /usr/lib/      # 創建鏈接文件方便系統識別

安裝 mhash:

[root@mysql media]# tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/
[root@mysql media]# cd /usr/src/mhash-0.9.9.9/
[root@mysql mhash-0.9.9.9]# ./configure && make && make install
[root@mysql mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.* /usr/lib/

安裝 mcrypt:

[root@mysql media]# tar zxf mcrypt-2.6.8.tar.gz -C /usr/src/
[root@mysql media]# export LD_LIBRARY_PATH=/usr/local/lib
:$LD_LIBRARY_PATH                # 此條命令解決 configure 配置錯誤
[root@mysql media]# ./configure && make && make install

接下里編譯安裝 PHP:

[root@mysql media]# tar zxf php-5.5.38.tar.gz -C /usr/src/
[root@mysql media]# cd /usr/src/php-5.5.38/
[root@mysql php-5.5.38]# ./configure --prefix=/usr/local/php5 \
> --with-mcrypt \
> --with-apxs2=/usr/local/httpd/bin/apxs \
> --with-mysql=/usr/local/mysql \
> --with-mysqli=/usr/local/mysql/bin/mysql_config \
> --with-config-file-path=/usr/local/php5 \
> --enable-mbstring
[root@mysql php-5.5.38]# make && make install     # 編譯並安裝
上述配置命令含義:
--prefix:指定將 PHP 程序安裝到那個目錄下
--with-mcrypt:加載數據加密等擴展工具支持
--with-apxs2:設置 Apache 提供的 apxs 模塊支持程序的文件位置
--with-mysql:設置 MySQL 數據庫服務程序的安裝位置
--with-mysqli:添加 mysqli 擴展支持
--with-config-file-path:設置 PHP 的配置文件 php.ini 將要存放的位置
--enable-mbstring:啓用多字節多字符串功能,以便支持中文等代碼

設置 LAMP 環境:
安裝好 PHP 軟件包後,服務器不會自動創建 php.ini 配置文件,但是在源碼包裏面提供了兩種樣例配置文件:

/usr/src/php-5.5.28/php.ini-development        //  開發版樣例文件,用於學習、測試
/usr/src/php-5.5.28/php.ini-production            // 生產版樣例文件,用於實際運營

選擇其中一個將其複製到 PHP 配置目錄中

[root@mysql php-5.5.38]# cp php.ini-development /usr/local/php5/php.ini
[root@mysql /]# vim /usr/local/php5/php.ini         # 編輯配置文件
……                   // 省略部分內容
default_charset = "utf-8"                //設置默認的字符集爲 utf-8
file_uploads = On                          // 允許通過 PHP 網頁上傳文件
upload_max_filesize = 2M            //允許上傳的文件大小
max_file_uploads = 20                 //每個 HTTP 最多允許請求上傳的文件數
post_max_size = 8M                    // 每次通過表單 post 提交的數據量限制
short_open_tag = On                   // 允許識別 PHP 短語法標記,即<?......?>
extension=php_mysqli.dll             // 添加 MySQL 支持

ZendGuardLoader 優化模塊,他可以提高 PHP 程序的執行效率、優化頁面加載速度
這塊可自行選擇,不安裝也不影響 PHP
添加 ZendGuardLoader 優化模塊:

 [root@mysql media]# tar zxf zend-loader-php5.5-linux-x86_64_update1.tar.gz -C /usr/src/                   
 [root@mysql media]# cd /usr/src/zend-loader-php5.5-linux-x86_64/
[root@mysql zend-loader-php5.5-linux-x86_64]# cp ZendGuardLoader.so /usr/local/php5/lib/php/           # 複製到 PHP 配置目錄下
[root@mysql /]# vim /usr/local/php5/php.ini 
……     // 省略部分內容
zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1

httpd.conf 配置調整:

[root@mysql /]# vim /usr/local/httpd/conf/httpd.conf
……                         // 省略部分內容
LoadModule php5_module        modules/libphp5.so       # 確認配置文件中有此行
<IfModule dir_module>
    DirectoryIndex index.html   index.php            # 添加語句 index.php
</IfModule>
 AddType application/x-httpd-php .php             # 添加此語句
 注意:上述配置均不在同一處地方,需要查詢

至此,PHP 基本安裝完成了,接下來測試一下
編寫一個 .php的測試網頁文件,存放到網頁文件根目錄下

[root@mysql /]# vim /usr/local/httpd/htdocs/test1.php
<?php
phpinfo();
?>     

LAMP 平臺搭建詳解
測試 PHP 網頁能否訪問 MySQL 數據庫:

[root@mysql /]# vim /usr/local/httpd/htdocs/test2.php 
<?php
$link=mysqli_connect('localhost','root','123');        # 用於連接數據庫的用戶和密碼
if($link) echo "koko!!";            # 此處是訪問成功的顯示文本
mysqli_close($link);
?>

LAMP 平臺搭建詳解

最後一步,也是大多數網站必備的一步,就是網站的後臺,通過web網頁來管理MySQL數據庫的,使用的是PHPMyadmin管理套件,源碼包可以從官方站點 https://www.phpmyadmin.net/ 進行下載:
將解壓後的源碼包目錄,移動到網站目錄下,並改名爲phpadmin:

[root@mysql media]# tar zxf phpMyAdmin-4.7.2-all-languages.tar.gz -C /usr/local/httpd/htdocs/
[root@mysql media]# cd /usr/local/httpd/htdocs/
[root@mysql htdocs]# mv phpMyAdmin-4.7.2-all-languages phpmyadmin

複製到網站目錄以後,還需要創建配置文件纔可正常使用,可以使用樣板config.sample.inc.php進行修改,把該文件名改爲config.inc.php即可,文件內有一行“blowfish_secret”配置項,默認已經設置了一個短語密鑰(此密鑰用於網頁cookie認證,不需我們記憶),可根據需要自己修改,我在這裏只把文件名改一下,可以正常使用即可:

[root@mysql htdocs]# cd phpmyadmin/
[root@mysql phpmyadmin]# mv config.sample.inc.php config.inc.php 

LAMP 平臺搭建詳解

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