Ubuntu安裝nginx php5-fpm mysql (lnmp環境搭建)

配置環境說明:
系統:ubuntu 12.04  32位
內存:512M
硬盤:20G

一、安裝nginx
1:ubuntu因爲安全策略,一般是禁用了root用戶,所以每次執行命令時一般需要加上sudo去操作。爲了方面後面其他步驟操作,可首先切換到root用戶,這樣後面不需要每次都加sudo了。

sudo su –   (切換用戶)

2:默認ubuntu默認是官方的源,國內用戶訪問可能會比較慢,所以將官方的源修改爲163的源,修改方法此處不做介紹,可查ubuntu官方的wiki幫助手冊。

訪問地址:http://wiki.ubuntu.org.cn/Qref/Source


3:源修改完畢後記得要刷新列表:

apt-get update


下面就開始安裝nginx了

安裝nginx的方式有多種,可以通過官方下載nginx源碼包編譯安裝,也可以通過ubuntu軟件包的形式安裝,個人覺得都可以。大致考慮如下幾點因素:

1)如果本身系統就是通過源碼編譯安裝的,那麼系統的性能將是比較高的,那麼這種情況,通過源碼來安裝軟件,性能是比較好的。而如果系統採用的是ubuntu等發行版安裝的,那麼軟件通過源碼編譯並不能帶來非常明顯的性能提升。當然如果你想鍛鍊一下,或者自我滿足一下,也可以試試通過源碼安裝。

2)如果本身搭建環境的目地是爲了測試、學習或小型的網站搭建,那麼也不建議通過源碼的方式來安裝,源碼安裝的方式出現的問題會比較多,同時也增加了小型站長日後維護的難度。

3)本身ubuntu系統支持的在線包管理機制,技術肯定已經非常成熟了,沒有必要過分擔心其穩定性與安全性。

4)當然通過源碼編譯的方式帶來的好處是,定製性比較高。所以看個人需求了。

好了,廢話不多說啦,開始進入正題。

4:安裝nginx

執行命令:apt-get install nginx


5.安裝完畢後,啓動nginx,對於Nginx 0.8.x後的版本採用新的啓動、停止、平滑啓動方式

開啓服務:

/etc/init.d/nginx start

也有另外一種開啓服務的方式

/usr/sbin/nginx -c /etc/nginx/nginx.conf

前面是nginx的安裝路徑,-c代表的是指定nginx配置文件的路徑


停止服務
/etc/init.d/nginx -s stop


重載

/etc/init.d/nginx -s reload

啓動完畢後,打開瀏覽器,訪問http://localhost  查看nginx是否正常安裝並啓動。vps等如果有防火牆限制,則可能不能通過ip的方式直接訪問,而需要通過配置域名來訪問。nginx配置虛擬主機的方式,後面在說。


二、安裝MySQL

ubuntu 安裝mysql相對比較簡單

1.安裝mysql的服務端

apt-get install mysql-server

在安裝的過程中需要你輸入root用戶的密碼。


2.安裝mysql的客戶端
apt-get install mysql-client


3.安裝完畢後,一般需要重新設置下字符集

1) 查看當前的編碼:show variables like 'character%';
2) 修改my.cnf,在[client]下添加default-character-set=utf8

命令:vi /etc/mysql/my.cnf
3) 在[server]下添加default-character-set=utf8,init_connect='SET NAMES utf8;'
4) 重啓mysql

/etc/init.d/mysql restart


三、安裝php5-fpm

apt-get install php5-cgi

apt-get install php5-fpm

apt-get install php5-curl  (客戶端 URL 庫函數庫)

apt-get install php5-gd (GD庫圖像函數庫)

apt-get install php5-mysql   (增加對mysql支持)

apt-get install php5-mcrypt  (Mcrypt 加密函數庫)

apt-get install php5-memcache  (Memcache客戶端)

apt-get install php5-memcached   (Memcache服務端)

apt-get install php5-dev    (開發支持模塊)


1:模塊說明:

什麼是CGI ?

CGI全稱是“公共網關接口”(Common Gateway Interface),HTTP服務器與你的或其它機器上的程序進行“交談”的一種工具,其程序須運行在網絡服務器上。


什麼是FastCGI ?

FastCGI像是一個常駐(long-live)型的CGI,它可以一直執行着,只要激活後,不會每次都要花費時間去fork一次(這是CGI最爲人詬病的fork-and-execute 模式)。它還支持分佈式的運算, 即 FastCGI 程序可以在網站服務器以外的主機上執行並且接受來自其它網站服務器來的請求。


什麼是PHP-CGI ?

PHP-CGI是PHP自帶的FastCGI管理器。


什麼是PHP-FPM ?

PHP-FPM是一個PHP FastCGI管理器,是隻用於PHP的。
PHP-FPM其實是PHP源代碼的一個補丁,旨在將FastCGI進程管理整合進PHP包中。
PHP5.3.3已經集成php-fpm了,不再是第三方的包了。PHP-FPM提供了更好的PHP進程管理方式,可以有效控制內存和進程、可以平滑重載PHP配置,所以被PHP官方收錄了。在./configure的時候帶 –enable-fpm參數即可開啓PHP-FPM。
使用PHP-FPM來控制PHP-CGI的FastCGI進程


2:安裝完畢後,對fastcgi 配置需要做些修改

vi /etc/nginx/fastcgi_params

註釋下面這行
#fastcgi_param  SCRIPT_FILENAME         $request_filename;
增加此行
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;


3:php5-fpm 配置優化

vi /etc/php5/fpm/pool.d/www.conf

下面4個參數的意思分別爲:
pm.max_children:靜態方式下開啓的php-fpm進程數量。
pm.start_servers:動態方式下的起始php-fpm進程數量。
pm.min_spare_servers:動態方式下的最小php-fpm進程數量。
pm.max_spare_servers:動態方式下的最大php-fpm進程數量。


注:以內存512M的VPS來說,建議設置的參數如下,僅供參考:
pm=dynamic
pm.max_children=20
pm.start_servers=5
pm.min_spare_servers=5
pm.max_spare_servers=20


四、安裝apc加速器

APC 可顯著加速 PHP 應用的速度。在應用中加入 APC 可提升應用的響應速度,降低服務器負載。

apt-get install php-apc


五、重啓php-fpm、nginx
sudo /etc/init.d/php5-fpm restart
sudo /etc/init.d/nginx restart


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