目錄
LNMP的介紹:
LNMP組合工作流程:
FastCGI介紹:
1、什么是 CGI
2、什么是 FastCGI
配置LNMP
1、部署LNMP環境
2、配置LNMP環境
LNMP的介紹:
隨著 Nginx Web 服務的逐漸流行,又岀現了新的 Web 服務環境組合—LNMP或LEMP,其中 LNMP 為 Linux 、Nginx、MySQL、PHP 等首字母的縮寫, 而 LEMP中的E則表示Nginx,它取 自 Nginx 名字的發音( engine X )。 現在,LNMP 已經逐漸成為國內大中型互聯網公司網站的主流組合環境, 因此, 我們必須熟練掌握 LNMP環境的搭建、 優化及維護方法。
LNMP組合工作流程:
當 LNMP 組合工作時, 首先是用戶通過瀏覽器輸人域名請求 Nginx Web 服務,如果請求是靜態資源, 則由 Nginx 解析返回給用戶; 如果是動態請求( .php 結尾 ), 那么Nginx 就會把它通過 FastCGI 接口( 生產常用方法)發送給 PHP 引擎服務( FastCGI 進程php-fpm ) 進行解析, 如果這個動態請求要讀 取數據庫數據, 那么 PHP 就會繼續向后請求 MySQL 數據庫, 以讀取需要的數據, 并最終通過 Nginx 服務把獲取的數據返回給用戶, 這就是 LNMP 環境的基本請求順序流程 。
FastCGI介紹:
1、什么是 CGI
CGI 的全稱為 “通用網關接口”( Common Gateway Interface ), 為 HTTP 服務器與其他機器上的程序服 務通信交流的一種工具, CGI 程序須運行在網絡服務器上。傳統 CGI 接口方式的主要缺點是性能較差, 因為每次 HTTP 服務器遇到動態程序時都需要重新啟動解析器來執行解析, 之后結果才會被返回給 HTTP 服務器。 這在處理高并發訪問時幾乎是不可用的, 因此就誕生了 FastCGI。 另外, 傳統的 CGI 接口方式安全性也很差, 故而現在已經很少被使用了。
2、什么是 FastCGI
FastCGI 是一個可伸縮地、 高速地在 HTTP 服務器和動態腳本語言間通信的接口( 在 Linux 下, FastCGI 接口即為 socket, 這個 socket 可以是文件 socket, 也 可 以 是 IP socket ), 主要優點是把動態語言和 HTTP 服務器分離開來。 多數流行的 HTTP 服務器都支持 FastCGI, 包括 Apache 、 Nginx 和 Lighttpd 等。
配置LNMP
1、部署LNMP環境
安裝國內的epel:
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
部署LNMP環境:
yum install nginx mariadb-server php php-mysql php-gd php-fpm -y
2、配置LNMP環境
數據庫:
mysql -e 'create database wordpress charset utf8'
mysql -e 'grant all on wordpress.* to wordpress@localhost identified by "123456"'
php-fqm:
server { listen 80; server_name localhost; location / { root /usr/share/nginx/html; index index.html index.php index.htm; } location ~ \.php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
測試nginx和php協同:
[root@node1 conf.d]# echo "<?php phpinfo(); ?>" >/usr/share/nginx/html/test.php
[root@node1 conf.d]# systemctl restart nginx
瀏覽器訪問:ip地址/test.php
?測試mysql和php協同:
下載好下載 WordPress 的壓縮包文件:wordpress-4.8-zh_CN.tar.gz
解壓到nginx默認的HTML測試頁面
tar xf wordpress-4.8-zh_CN.tar.gz -C /usr/share/nginx/html/
啟動環境:
systemctl restart nginx mariadb php-fpm
瀏覽器訪問:ip地址/wordpress,并根據提示部署