LNMP是一個很流行的web架構,使用nginx做爲web服務器,由於nginx沒有像Apache那樣的php模塊,這裏使用的是php-fpm做爲應用服務器,是一個單獨的應用程序。nginx它的優勢是:處理靜態網頁的性能好,併發量大。而nginx在處理動態網頁的時候是須要額外的調用php-fpm去處理,相比於Apache使用的mod_php這個自身集成的php模塊會慢不少,但使用php-fpm的一個特色是能夠有多臺php-fpm去處理php的請求,這樣的話mod_php在處理動態網頁的性能就不用講了,久經考驗戰士Apache服務器,它的性能,穩定性的很是好,可是隨着科技的發展,一些新技術的出現,研發出了比較好的,慢慢的就會去代替掉舊的,尤爲是在當今好高訪問量的網站使用lamp是無法去知足。
進入部署LNMP的環境:php 1部署nginx 2部署php_fpm 3部署wordpress
1.部署安裝Nginx 在安裝部署nginx前須要作的工做,訪問nginx官網「nginx.com」下載nginx ,在nginx的download下有三個版本,開發版/穩定版/舊版本(這裏使用的是Stable version 穩定版——nginx-1.6.0)
而且這臺純淨的linux環境下去安裝開發相關的工具,爲編譯nginx作鋪墊。yum groupinstall -y 「Development Tools 」
解壓nginx,切到解壓後的目錄
在當前目錄運行「./configure」去編譯源代碼而且檢查依賴關係和相關庫文件,而且生成makefiet
這裏報錯,須要把"pcre-devel openssl openssl-devel"兩個庫文件包須要手工進行安裝
安裝完成在運行./configure ,這時候就不報錯了
使用make命令進行編譯
編譯完成使用make install進行安裝
安裝完成切換到nginx默認的安裝路徑爲"/usr/local/nginx/目錄下:conf目錄就是保存配置文件,sbin目錄保存的時可執行的二進制文件html ,html網站的根目錄,logs保存的應該是nginx的日誌信息。mysql
使用vim編輯conf下的nginx.conf:把user註釋刪掉,根據實際狀況去修改網站的根目錄和配置相應的虛擬主機
切換到./sbin目錄下運行./nginx,執行完了沒有任何報錯表示成功
能夠經過「ps aux | grep nginx」或者「netstat -lunpt」去查看進程和監聽的端口,能夠看到nginx的兩個master是控制程序,worker是對外提供服務。提供http服務的tcp 80 端口。
使用瀏覽器經過127.0.0.1去訪問驗證web是否正常工做,出現這個頁面表明個人nginx環境已經搭建好了。
2安裝部php-fpm署linux
安裝前的準備工做:下載第三方yum源 repoforge 下載對應的rpm包(我這裏的時Centos6.4 x86_64 )
安裝下載的第三方源
安裝完成後經過yum clean all 去清除緩存,在經過yum list去加載新的yum源
安裝編譯php相關的軟件包(在裝php的時候系統要求當前沒有任何的php相關程序否者會報錯,能夠經過yum remove去卸載) 安裝完成對php源代碼進行解壓,並切換到解壓的目錄,運行./configure+參數 運行./configure+參數 (以下)
報錯:「configure: error: Cannot find MySQL header files under /usr/.Note that the MySQL client library is not bundled anymore!「由於沒有安裝mysql nginx
」 安裝mysql好數據庫,再次運行./configure+參數
web 報錯,找不到mysql的安裝位置,經過「ln -s /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so或者sql
ln -sf /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so」去鏈接mysql的路徑,再次./configure+參數數據庫
這裏就安裝完成了!生成makefiteapache 使用「make」去編譯(安裝過程會很長,由於自己php包有139M)
.............................
編譯完成使用make install 去安裝php
安裝完成以後切換到php程序的安裝路徑「/usr/local/php」 sbin是可執行文件, 如今並不能夠在這個目錄下運行php(由於尚未配置文件),etc配置文件(有一個默認配置,除了這個還須要有一個php.ini的配置文件)
添加php配置文件 切換php解壓後的文件夾中,找到php.ini-production(實際使用的),php.ini-development(開發使用) 拷貝到/usr/local/php/etc/重命名爲/php.ini cp php.ini-production /usr/local/php/etc/php.inivim 在 /usr/local/php/etc/ 建立php解析的配置文件(只須要把etc默認的「php-fpm.conf.default」拷貝重命名;) cp php-fpm.conf.default php-fpm.conf
查看 php-fpm.conf 文件,不須要對它驚醒設置 (須要在nginx的配置文件下去設置php的請求經過9000端口發給php-fpm)
啓動php 沒有任何報錯表示成功
經過「ps aux | grep nginx」或者「netstat -lunpt」去查看進程和監聽的端口
在nginx的配置文件下去設置php的請求經過9000端口發給php-fpm 重啓nginx
添加index.php到網站根目錄下(內容「<?php phpinfo();?>」)
設置網站根目錄的權限爲「nobody」 (apache默認使用的就是apache用戶);經過瀏覽器訪問127.0.0.1/index.php 去測試php-fpm能不能正常的解析,返回php頁面,到這裏就完成php—fmp就安裝好了 3.安裝部署wordpress 解壓wordpress
把解壓目錄的全部內容移到網站的根目錄
經過瀏覽器訪問127.0.0.1去訪問 (若是訪問不了,檢查seLinux/網站根目錄的權限/所屬用戶是否爲nobody); 進入wordpress的設置階段,設置數據庫的時候數據名稱必須與實際的同樣。下面照着提示搭建添加本身想要的東西,使網站更加的美化
那麼辛苦搭建好了,快來欣賞下吧 一個LNMP的基本機構就搭建好了。挺累的。。。。。。
|