簡介:這是Nginx環境下Php安裝的詳細頁面,介紹了和php,nginx, php Nginx環境下Php安裝有關的知識、技巧、經驗,和一些php源碼等。
class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=348685' scrolling='no'>
其實很簡單的事,我每次安裝貌似都會走彎路,所以還是記下來吧
CentOS 5.5 Nginx 1.0.5Php 5.5.8
1.先安裝Nginx
#tar -zxvf nginx-1.0.5.tar.gz#cd nginx-1.0.5#./configure#make#make install
2.安裝php,採用fastcgi的安裝方式,順道查了下fastcgi的優勢和劣勢,供參考(摘抄自網路)
【註:我已經安裝好了Mysql,因為沒有太多特別的地方,所以就不做說明】
優勢
- PHP指令碼運行速度更快(3到30倍)。PHP解釋程式被載入記憶體而不用每次需要時從儲存空間讀取,極大的提升了依靠指令碼啟動並執行網站的效能。
- 需要使用更少的系統資源。由於伺服器不用每次需要時都載入PHP解釋程式,你可以將網站的傳輸速度提升很高而不必增加cpu負擔。
- 不需要對現有的代碼作任何改變。現有的一切都適用於PHP的FastCGI
潛在問題
- 對所有的子目錄(/home/USERNAME/public_html/php.ini)你只有一個可用的php.ini檔案。 這是最佳化網站代碼所必需的。如果你需要多個php.ini檔案以適應不同的指令碼需要,你可以在任何子目錄禁用PHP的快速CGI,而其餘的地方則繼續有 效。如果你需要這樣做請聯絡support。
- 你對PHP環境做的任何升級(如php.ini檔案的改變)都有幾分鐘的延遲。這是因為為了更快的速度 你的php.ini檔案已經被載入記憶體,而不是每次需要時再從儲存空間重新讀取。
我在安裝的時候並沒有去考慮php.ini的問題,只要考慮好php-fpm.conf就可以了
php的安裝的確是稍微不太一樣,簡單的說,就是作為一個單獨的服務啟動了
#tar -zxvf php-5.3.8.tar.gz#cd php-5.3.8// 編譯的時候一定要加入參數--enable-fpm#./configure --prefix=/usr/local/php --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --with-mysql=/usr/local/mysql/ --with-pdo-mysql=/usr/local/mysql --enable-soap --enable-sockets --enable-zip --enable-xml --with-curl --enable-mbregex --enable-sysvsem --enable-mbstring --with-mcrypt --enable-fpm#make#make install
3.配置php和nginx
1.使用php-fpm啟動php
#cd /usr/local/php/etc/#cp php-fpm.conf.default php-fpm.conf#vi php-fpm.conf// 找到如下幾行,確保如下幾行前沒有";"pid = run/php-fpm.piderror_log = log/php-fpm.loglisten = 127.0.0.1:9000pm.max_children = 50pm.start_servers = 20pm.min_spare_servers = 5pm.max_spare_servers = 35pm.max_requests = 500
php5.5.8版本提供了php-fpm的管理工具,可以很方便的start,stop,restart
// 只是我個人習慣把php相關命令丟在這#cd /usr/local/php/sbin/// 在安裝檔案中複製該檔案#cp /downloads/php-5.3.8/sapi/fpm/init.d.php-fpm ./#chmod 755 init.d.php-fpm// start | stop | restart#./init.d.php-fpm start
2.nginx的配置
#vi /usr/local/nginx/conf/nginx.conf// 去掉之前的"#"// SCRIPT_FILENAME如果填錯,則顯示空白頁面location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }#vi /usr/local/nginx/conf/fastcgi_params// 注釋掉該行,暫時還不知道為啥#fastcgi_param REDIRECT_STATUS 200;
啟動nginx
#cd /usr/local/nginx/sbin/// 測試組態檔案是否正確#./nginx -t// 啟動#./nginx // 重新載入#./nginx -s reload// 重啟#./nginx -s reopen
愛J2EE關注Java邁克爾傑克遜視頻站JSON線上工具
http://biancheng.dnbcw.info/php/348685.html pageNo:3