LNMP的原理及簡介

1、LNMP的簡介:
LNMP表明的就是:Linux系統下Nginx+MySQL+PHP這種網站服務器架構。Nginx是一個高性能的HTTP和反向代理服務器,也是一個IMAP/POP3/SMTP代理服務器。Mysql是一個小型關係型數據庫管理系統。PHP是一種在服務器端執行的嵌入HTML文檔的腳本語言。這四種軟件均爲免費開源軟件,組合到一塊兒,成爲一個免費、高效、擴展性強的網站服務系統。
2、LNMP的特色:
Nginx是一個小巧而高效的Linux下的Web服務器軟件,是由 Igor Sysoev 爲俄羅斯訪問量第二的 Rambler 站點開發的,已經在一些俄羅斯的大型網站上運行多年,至關的穩定。Nginx性能穩定、功能豐富、運維簡單、處理靜態文件速度快且消耗系統資源極少。
3、LNMP的優勢:
1.做爲 Web 服務器:相比 Apache,Nginx 使用更少的資源,支持更多的併發鏈接,體現更高的效率。
2.做爲負載均衡服務器:Nginx 既能夠在內部直接支持 Rails 和 PHP,也能夠支持做爲 HTTP代理服務器對外進行服務。Nginx 用C編寫,不管是系統資源開銷仍是CPU使用效率都比Perlbal要好的多。
3.做爲郵件代理服務器:Nginx同時也是一個很是優秀的郵件代理服務器(最先開發這個產品的目的之一也是做爲郵件代理服務器),Last/fm 描述了成功而且美妙的使用經驗。
4.Nginx 安裝很是的簡單:配置文件很是簡潔(還可以支持perl語法)。Nginx支持平滑加載新的配置,還可以在不間斷服務的狀況下進行軟件版本的升級。
4、LNMP的搭建:
第一部分:nginx的安裝
1》配置yum
2》檢查系統環境西否具有相應的開發工具
Yum grouplist
3》安裝pcre爲了實現頭部的地址重寫
pcre-devel 開發包 包含了不少的庫文件 和一些頭文件
/usr/lib /lib爲系統庫文件的存放位置
p_w_picpath
4 》拆解tar -zxcf libevent -C /usr/local/src
cd /usr/local/src/libevent
p_w_picpath
5》./configure 默認安裝到/usr/local目錄下
make 變成 可執行文件 頭文件 庫文件 文檔
p_w_picpath
[root@zhangc libevent-2.0.16-stable]# make install
ldconfig -pv |grep libevent
(是庫文件可以被正常調用須要指明路徑)vim /etc/ld.so.conf.d/libevent.conf
/usr/local/lib
[root@zhangc libevent-2.0.16-stable]# ldconfig –v手工調用一次
p_w_picpath
6》tar nignx
./configure --help
groupadd -r nginx
useradd -r -g nginx -s /bin/false -M nginx
-r表示系統帳號
-M不建立家目錄
-s表示shell
nginx的安裝與配置
./configure \(檢測預編譯環境)
--prefix=/usr \(安裝路徑)
--sbin-path=/usr/bin/nginx \(服務進程的存放位置)
--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 用於url的重定向
p_w_picpath
7》使用make進行編譯
p_w_picpath
p_w_picpath
8》mkdir -pv /var/tmp/nginx
9》nginx 啓用nginx
[root@zhangc nginx-1.0.11]# nginx
10》使用pc訪問能夠看到nginx
p_w_picpath
sendfile 機制
配置腳本文件爲/etc/nginx/nginx.conf其中
location / 表示/usr/html/能夠訪問目錄下的任意對象
nginx安裝完成。
第二部分:mysql的安裝
安裝綠色軟件MYSQL數據庫
1》解壓縮:
[root@zhangc ~]# tar zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local/
p_w_picpath
2》進入查看INSTALL文件的安裝方法
[root@zhangc mysql-5.5.15-linux2.6-i686]# less INSTALL-BINARY
p_w_picpath
3》按照安裝說明文件添加相應的組和用戶與須要的參數進行安裝
[root@zhangc mysql-5.5.15-linux2.6-i686]# groupadd mysql
[root@zhangc mysql-5.5.15-linux2.6-i686]# useradd -r -g mysql mysql
[root@zhangc mysql-5.5.15-linux2.6-i686]# cd /usr/local
[root@zhangc local]# ln -s mysql-5.5.15-linux2.6-i686/ mysql
[root@zhangc local]# cd mysql
[root@zhangc mysql]# chown -R mysql .
[root@zhangc mysql]# chgrp -R mysql .
[root@zhangc mysql]# scripts/mysql_install_db --user=mysql
[root@zhangc mysql]# chown -R root .
[root@zhangc mysql]# chown -R mysql data
[root@zhangc mysql]# bin/mysqld_safe --user=mysql &【啓動mysql】
各個文件權限最終修改成以下圖:
p_w_picpath
4》安裝完成,查看mysql服務佔用的端口和進程號
[root@zhangc mysql]# bin/mysqld_safe --user=mysql &【啓動mysql】
p_w_picpath
5》啓動mysqld服務
p_w_picpath
6》編輯文件使系統能正常調用庫文件:
[root@zhangc mysql]# vim /etc/ld.so.conf
include ld.so.conf.d/*.conf 【說明/etc/ld.so.conf.d/文件夾下的.conf結尾的文件均能正常調用】
[root@zhangc mysql]# vim /etc/ld.so.conf.d/mysql.conf【寫入mysql的庫文件的路徑】
p_w_picpath
7》手動調用一次庫文件查看是否能被正常調用:
[root@zhangc mysql]# ldconfig -v |grep mysql
/usr/local/mysql/lib:
libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0
8》爲頭文件建立標準鏈接
p_w_picpath
該服務安裝完成
第三部分:php源碼安裝
PHP 源碼安裝:
1》拆解到/usr/local/src/而後進入cd /usr/local/src/php-5.1.15
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --enable-fpm --with-libevent-dir=/usr/local --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --with-iconv-dir=/usr/local
2》安裝完成後,使用make ZEND_EXTRA_LIBS='-liconv'編譯
p_w_picpath
3》使用make install安裝
  4》安裝完成之後,須要拷貝配置文檔到相應目錄位置
p_w_picpath
5》編輯文件/usr/local/php/etc/php-fpm.conf
[root@zhangc php-5.3.7]# vim /usr/local/php/etc/php-fpm.conf
將下面幾行前面的;(分號)去掉
30行 error_log
141行 pm.start_server
182行 pm.max_requests
146行 pm.max_spare_servers
171行 pm.min_spare_servers
161行 pm.max_children
6》而後啓動fastcgi
[root@zhangc php-5.3.7]# /usr/local/php/sbin/php-fpm &
[2] 23529
7》編輯配置文件/etc/nginx/fastcgi.conf
p_w_picpath
p_w_picpath
8》切換到/etc/nginx,保證兩個文件相同:fastcgi.conf 和 fastcgi_params
cat fastcgi.conf > fastcgi_params
p_w_picpath
9》而後修改/etc/nginx/nginx.conf文件,添加與php相關的選項
[root@zhangc nginx]# vim /etc/nginx/nginx.conf
p_w_picpath
p_w_picpath
10》試驗完成
從新啓動nginx服務
[root@zhangc nginx]# nginx
11》建立並編輯/usr/html/index.php
p_w_picpath
12》測試調用php是否成功:
p_w_picpath
13》測試調用mysql是否成功
p_w_picpath
測試成功
p_w_picpath
相關文章
相關標籤/搜索