基于centos5.8源码安装nginx之LNMP
LNMP?指的是什么呢,這里可以“望文生義”,其是linux??NGINX??Mysql??PHP的組合。每一種工具的安裝都有其特長來吸引我們去使用它,對此就要了解其組合的各個工具的特點:
Linux:不用多說,這是我們都熟知的以開源系統,是一類Unix計算機操作系統的統稱,是目前最流行的免費的操作系統。
NGINX:是一個高性能的HTTP和反向代理服務器,是一個小巧而高效的Linux下的Web服務器軟件。Nginx性能穩定、功能豐富、運維簡單、處理靜態文件速度快且消耗資源極少。
Mysql:是一個小型關系型數據庫管理系統,現在市場份額也在不斷的擴大。
PHP:一種在服務器段執行的嵌入HTML文檔的腳本語言,市場需求在不斷攀升。
簡單了解了LNMP后,下來就是來搭建了
?
搭建之前呢,要先到相應的官網下載相應的源碼,這里我已下載下來了,它們是
?
libevent-2.0.18-stable.tar.gz
mysql-5.5.15-linux2.6-i686.tar.gz
nginx-1.3.16.tar.gz
php-5.4.14.tar.bz2
xcache-3.0.1.tar.gz
?
對于各個部分的搭建順序,每一一個一成不變的次序,但由于PHP要依賴NGINX和Mysql模塊的,所以,要先對NGINX和Mysql來進行安裝
這里,為了可以使用到各模塊的最新功能,采用源碼來安裝。而Mysql的源碼安裝,其官方還為我們提供了二進制版的,為我們省去了不少“麻煩”,對于我這樣的懶人,當然不會“自找麻煩了”,這里就采用二進制版來安裝。
首先來進行拆包:?tar?-zxvf?mysql-5.5.15-linux2.6-i686.tar.gz?-C?/usr/local/切換到解壓的目錄可以看到解壓出的目錄名字很長,為了操作的方便,這里為其做一個軟連接:
ln?-s?mysql-5.5.15-linux2.6-i686/??mysql
然后切換到mysql目錄下,可以看到官方提供的安裝文檔INSTALL-BINARY,根據里面的步驟做就好
創建組:groupadd?-r?mysql
創建用戶:useradd?-r?-g?mysql?mysql?-M
改變所有者:chown?-R?mysql?.
改變所屬組:chgrp?-R?mysql?.
初始化:scripts/mysql_install_db?--user=mysql
然后把權限改回來:??chown?-R?root?.???chown?-R?mysql?data
然后拷貝并生成mysql配置文檔:cp?support-files/my-medium.cnf?/etc/my.cnf
拷貝并生成mysql的控制文件:cp?support-files/mysql.server?/etc/init.d/mysqld,賦予其可執行權限:chmod?a+x?/etc/init.d/mysqld
利用?chkconfig?--add?mysqld來把其加入開機啟動進程。
啟動mysql。
在profile文件中加入mysql環境變量
把庫文件的路徑加入變量里vim?/etc/ld.so.conf.d/mysql.conf:/usr/local/mysql/lib
然后執行ldconfig命令來刷新,接著來看能不能找到庫文件
然后對頭文件include做一個軟連接:ln?-s?include?/usr/include/mysql
啟動mysql,且為root用戶設置密碼:mysqladmin -u root -p password 'wgz0224gz'
到此,mysql的搭建就完成了。
下面來搭建NGINX。
安裝nginx之前,首先要安裝pcre(正則表達式庫)和livevent(提高應用程序的性能)
安裝pcre-devel就采用rpm包來安裝就好
然后源碼安裝livevent
首先依舊先拆包?tar?-zxvf?libevent-2.0.18-stable.tar.gz??-C?/usr/local/src/,切換到解壓的目錄
執行以下命令
?./configure?--prefix=/usr/local/libevent
make
make?install
切換到安裝目錄,對庫文件做相應的處理
vim?/etc/ld.so.conf.d/libevent.conf?加入路徑/usr/local/libevent/lib
然后執行如圖示命令
然后對頭文件做軟連接:?ln?-s?/usr/local/libevent/include/??/usr/include/libevent
然后來安裝nginx
首先拆包?tar?-zxvf?nginx-1.3.16.tar.gz?-C?/usr/local/src/然后切換到解壓的目錄中去
創建組和用戶:
接下來執行如下命令:
./configure?\
??--conf-path=/etc/nginx/nginx.conf?\
?--error-log-path=/var/log/nginx/error.log?\
??--http-log-path=/var/log/nginx/access.log?\
??--pid-path=/var/run/nginx/nginx.pid?\
??--lock-path=/var/lock/nginx.lock?\
??--user=nginx?\
?--group=nginx?\
??--with-http_ssl_module?\
??--with-http_flv_module?\
??--with-http_stub_status_module?\
??--with-http_gzip_static_module?\
??--http-client-body-temp-path=/var/tmp/nginx/client/?\
?--http-proxy-temp-path=/var/tmp/nginx/proxy/?\
??--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/?\
??--with-pcre
make
make?install
然后在/etc/init.d/目錄下做一個控制腳本nginx
然后為其附加可執行權限:chmod?a+x?nginx
然后把其加入chkconfig管理:chkconfig?--add?nginx然后創建一個目錄:
mkdir?-pv?/var/tmp/nginx/client
接著啟動nginx:service?nginx?start然后測試nginx是否啟動成功
然后來安裝php(fastcgi)
首先依舊進行拆包:?tar?-jxvf?php-5.4.14.tar.bz2?-C?/usr/local/src/
切換到剛解壓的目錄,執行如下老三部的命令:
./configure????\
??????--prefix=/usr/local/php?\
???????--enable-fpm???\
???????--enable-sockets??\
???????--with-mysql=/usr/local/mysql?\
????????--with-mysqli=/usr/local/mysql/bin/mysql_config??\
????????--enable-mbstring??\
????????--enable-xml??\
????????--with-png-dir?\
????????--with-png??\
????????--with-jpeg-dir??\
????????--with-zlib??\
?????????--with-freetype-dir?\
????????--with-config-file-path=/etc/php?\
?????????--with-config-file-scan-dir=/etc/php5.d
make
make?install
創建兩個目錄:?mkdir?/etc/php?/etc/php5.d
拷貝生成php.ini文件:進入源碼目錄?cp?php.ini-production??/etc/php/php.ini
拷貝生成php-fpm的控制腳本:進入源碼目錄cp?sapi/fpm/init.d.php-fpm??/etc/init.d/php-fpm賦予其可執行權限chmod??a+x?/etc/init.d/php-fpm
拷貝產生php-fpm的配置文件:進入php的安裝目錄下的etc目錄?
??cp?php-fpm.conf.default?php-fpm.conf
啟動php-fpm:
service??php-fpm??start
chkconfig??--add?php-fpm
接下來為了讓nginx能解析php的請求,需要編輯nginx的配置文件vim?/etc/nginx/nginx.conf
然后進行測試:
首先要在/usr/local/nginx/html/目錄下編輯一個php文件,這里我把index.html改為php文件,來更好的說明nginx與php?的關聯:mv?index.html?index.php編輯這個php文件,在后面追加如下圖的內容:
重啟nginx,在瀏覽器里測試:
接下來測試與mysql的連接性,同樣要先編輯這個php文件,在后面追加如下圖內容(內容自己編輯,只要達到測試的目的即可)
重啟服務,利用瀏覽器進行測試:
當把mysql停掉時
看來各模塊已經成功銜接了。
下面來做php加速
首先依舊是拆包:tar?-zxvf?xcache-3.0.1.tar.gz?-C?/usr/local/src/
然后切換到源碼目錄,由安裝文檔知,首先切換到php安裝目錄里執行/usr/local/php/bin/phpize(為了生成configure文件),接著就是執行我們所熟知的老三部了:
./configure?--enable-xcache??--with-php-config=/usr/local/php/bin/php-config
make
make?install(執行完后會出現一條目錄,要記下來后面要用:
??/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/)
然后整合xcache與php,已達到加速php的目的:cp?xcache.ini??/etc/php5.d
然后編輯該文件:vim?/etc/php5.d/xcache.ini?
為了方便管理xcache,可以進行如下操作
cd?/usr/local/src/xcache-3.0.1/
?cp?-r?htdocs/?/usr/local/nginx/html/
cd?/usr/local/nginx/html/htdocs/
chmod?a+r?index.php?
然后編輯文件vim?/etc/php5.d/xcache.ini?
添加賬號和密碼,但是密碼需要md5加密的,所以先要生成一個md5加密的密碼
然后把賬號和密碼(自己定)加入/etc/php5.d/xcache.ini中
然后重啟服務,并測試
到此,基于nginx的LNMP就大功告成啦
轉載于:https://blog.51cto.com/6320172/1186037
總結
以上是生活随笔為你收集整理的基于centos5.8源码安装nginx之LNMP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鸟哥学习笔记---网络驱动器设备iSCS
- 下一篇: sql按拼音排序