CentOS 6 默認倉庫不包含nginx,咱們能夠手動添加nginx的倉庫。php
訪問nginx官網獲取repo文件
咱們須要先訪問nginx的官方網站,獲取官方的倉庫地址。
點擊這裏訪問nginx官方文檔。html
依照文檔中的說明,最後的repo文件應該是下面這樣,您能夠直接複製。mysql
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1linux
使用vim將上面的配置保存到/etc/yum.repos.d/nginx.repo
文件中。nginx
安裝nginx
安裝好倉庫後能夠直接使用yum安裝nginx。web
yum install -y nginx
啓動nginx
執行service nginx start
啓動nginx。sql
啓動成功後執行netstat -tunlp|grep 80
就能夠看到nginx已經啓動了80端口的監聽。vim
-
-
tcp
0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1881/nginx
而且經過瀏覽器直接訪問服務器的ip地址,能看到已經出現了nginx的歡迎頁面。centos

設置nginx爲開機啓動
執行chkconfig nginx on
設置nginx爲開機啓動。瀏覽器
安裝MySQL
CentOS 6的默認倉庫直接包含MySQL,能夠直接經過yum安裝 MySQL Server。
yum install -y mysql mysql-server
MySQL服務名稱爲mysqld
,咱們能夠經過下面命令啓動MySQL服務。
service mysqld start
同nginx同樣,使用下面命令將mysqld加入開機啓動任務。
chkconfig mysqld on
啓動成功後執行netstat -tunlp|grep 3306
就能夠看到mysqld已經啓動了3306端口的監聽。
-
-
tcp
0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2094/mysqld
還能夠經過mysql客戶端鏈接到MySQL服務器。
-
[root@localhost ~]# mysql
-
Welcome
to the MySQL monitor. Commands end with ; or \g.
-
Your MySQL connection id
is 2
-
Server version:
5.1.73 Source distribution
-
-
Copyright (c)
2000, 2013, Oracle and/or its affiliates. All rights reserved.
-
-
Oracle
is a registered trademark of Oracle Corporation and/or its
-
affiliates. Other names may be trademarks
of their respective
-
-
-
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
-
-
-
安裝PHP
CentOS 默認倉庫中包含了php套件,咱們能夠直接使用yum安裝。
下面是最小化安裝,咱們使用php-fpm來解析php。
yum install -y php-cli php-fpm
您能夠隨時使用yum list php-*
查看其它php擴展,下面是默認倉庫中包含的全部擴展。
-
[root@localhost ~]# yum list php-*
-
Loaded plugins: fastestmirror
-
Loading mirror speeds from cached hostfile
-
-
*
extras: mirrors.sina.cn
-
*
updates: mirrors.sina.cn
-
-
php-cli.x86_64 5.3.3-48.el6_8 @updates
-
php-common.x86_64
5.3.3-48.el6_8 @updates
-
php-fpm.x86_64
5.3.3-48.el6_8 @updates
-
-
php.x86_64
5.3.3-48.el6_8 updates
-
php-bcmath.x86_64
5.3.3-48.el6_8 updates
-
php-dba.x86_64
5.3.3-48.el6_8 updates
-
php-devel.x86_64
5.3.3-48.el6_8 updates
-
php-embedded.x86_64
5.3.3-48.el6_8 updates
-
php-enchant.x86_64
5.3.3-48.el6_8 updates
-
php-gd.x86_64
5.3.3-48.el6_8 updates
-
php-imap.x86_64
5.3.3-48.el6_8 updates
-
php-intl.x86_64
5.3.3-48.el6_8 updates
-
php-ldap.x86_64
5.3.3-48.el6_8 updates
-
php-mbstring.x86_64
5.3.3-48.el6_8 updates
-
php-mysql.x86_64
5.3.3-48.el6_8 updates
-
php-odbc.x86_64
5.3.3-48.el6_8 updates
-
php-pdo.x86_64
5.3.3-48.el6_8 updates
-
php-pear.noarch
1:1.9.4-5.el6 base
-
php-pecl-apc.x86_64
3.1.9-2.el6 base
-
php-pecl-apc-devel.i686
3.1.9-2.el6 base
-
php-pecl-apc-devel.x86_64
3.1.9-2.el6 base
-
php-pecl-memcache.x86_64
3.0.5-4.el6 base
-
php-pgsql.x86_64
5.3.3-48.el6_8 updates
-
php-process.x86_64
5.3.3-48.el6_8 updates
-
php-pspell.x86_64
5.3.3-48.el6_8 updates
-
php-recode.x86_64
5.3.3-48.el6_8 updates
-
php-snmp.x86_64
5.3.3-48.el6_8 updates
-
php-soap.x86_64
5.3.3-48.el6_8 updates
-
php-tidy.x86_64
5.3.3-48.el6_8 updates
-
php-xml.x86_64
5.3.3-48.el6_8 updates
-
php-xmlrpc.x86_64
5.3.3-48.el6_8 updates
-
php-zts.x86_64
5.3.3-48.el6_8 updates
一樣的,咱們須要將php-fpm設置爲開機啓動。
-
-
啓動完成後,咱們能夠經過netstat -tunlp|grep 9000
命令查看到,php-fpm 已經開始監聽9000端口。
-
-
tcp
0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 2147/php-fpm
配置nginx使其支持php程序
接下來咱們演示如何部署web服務的內容。
建立web目錄和文件
咱們假設web目錄爲/var/www
,建立並進入這個目錄。
-
-
咱們新建兩個文件,一個html文件,一個php文件,稍後會看到效果。
a.html的內容爲:
<h1>Hello World</h1>
b.php的內容爲:
-
-
-
-
變動nginx配置
咱們使用vim打開nginx第一個站點的配置文件vim /etc/nginx/conf.d/default.conf
。
將第9行的root
變動爲咱們指定的目錄。
修改
-
-
root /usr/share/nginx/html;
-
index index.html index.htm;
-
變動爲
-
-
-
index index.html index.htm;
-
將30-36行的註釋去掉,使其支持php文件,同時還須要修改root
和fastcgi_param
選項指定咱們的工做目錄。
修改
-
-
-
-
-
-
-
-
-
變動爲
-
-
-
-
-
fastcgi_pass
127.0.0.1:9000;
-
-
fastcgi_param SCRIPT_FILENAME /
var/www$fastcgi_script_name;
-
-
保存後,執行service nginx reload
從新載入nginx配置。
此時,咱們能夠經過瀏覽器直接訪問咱們剛纔創建的文件了。

結語
以上,就是lnmp的簡單安裝和配置,它已經能夠解析php程序。生產環境中,每每還要對其配置文件進行各類更改,已對其性能進行優化。
例如,php的session目錄可能默認會沒有寫權限、nginx的鏈接數要更改等各類問題。
熟悉了lnmp的簡單安裝之後,就能夠繼續深刻了解,學習手動編譯指定版本的nginx、php或mysql服務了。