一、简介

LNMP是什么

        LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。

      Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版

本有:debian、centos、ubuntu、fedora、gentoo等。

      Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理

服务器。

      Mysql是一个小型关系型数据库管理系统。

      PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。

      这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的

网站服务系统。

Nginx的特点

      Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄

罗斯访问量第二的 Rambler 站点开发的,已经在一些俄罗斯的大型网站上运行多

年,相当的稳定。Nginx性能稳定、功能丰富、运维简单、处理静态文件速度快且消

耗系统资源极少。

LNMP这种架构有什么优势

      作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连

接,体现更高的效率。

      作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作

为 HTTP代理服务器对外进行服务。Nginx 用C编写,不论是系统资源开销还是CPU

使用效率都比Perlbal要好的多。

      作为邮件代理服务器:Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这

个产品的目的之一也是作为邮件代理服务器), Last/fm  描述了成功并且美妙的使用

经验。

      Nginx 安装非常的简单,配置文件非常简洁(还能够支持perl语法)。Nginx支持平

滑加载新的配置,还能够在不间断服务的情况下进行软件版本的升级。

LNMP和LAMP的区别

      LNMP 是基于 LAMP 的一种演变,将其中的 Apache 换成了Nginx的开源架构。

Nginx是开源网络服务器的后起之秀,相比 Apache,Nginx 使用更少的资源,支持更

多的并发连接,体现更高的效率,方便的群集配置,正被越来越多的人所使用。但

新生总有很多毛病,LAMP老品牌值得信任,理想中的搭配LAMP+LN,两种组合安

装在不同服务器上,LAMP负责处理动态网站,LN负责处理静态网站。

二、案例

[root@localhost ~]# mkdir /mnt/cdrom

[root@localhost ~]# mount /dev/cdrom /mnt/cdrom

[root@localhost ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo

本地yum编辑结果:

[rhel-server]

name=Red Hat Enterprise Linux serverbaseurl=file:///mnt/cdrom/Server

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[root@localhost ~]# yum install pcre-devel

安装libevent

[root@localhost ~]# tar -zxvf libevent-2.0.16-stable.tar.gz

–C /usr/local/src

[root@localhost ~]# cd /usr/local/src

[root@localhost src]# cd libevent-2.0.16-stable/

[root@localhost libevent-2.0.16-stable]# ./configure

[root@localhost libevent-2.0.16-stable]# make

[root@localhost libevent-2.0.16-stable]# make install

编辑库文件

[root@localhost local]# vim /etc/ld.so.conf.d/libevent.conf

编辑结果

/usr/local/lib

libevent安装完成。

安装nginx

[root@localhost ~]# tar -zxvf nginx-1.0.11.tar.gz -C /usr/local/src

[root@localhost ~]# cd /usr/local/src

[root@localhost src]# cd nginx-1.0.11/

[root@localhost nginx-1.0.11]# groupadd -r nginx

[root@localhost nginx-1.0.11]# useradd -r -g nginx -s /bin/false -M nginx

[root@localhost nginx-1.0.11]# ./configure \

> --prefix=/usr \

> --sbin-path=/usr/sbin/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-proxy-temp-path=/var/tmp/nginx/proxy/ \

> --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \

> --with-pcre

[root@localhost nginx-1.0.11]# make

[root@localhost nginx-1.0.11]# make install

[root@localhost ~]# mkdir -pv /var/tmp/nginx

nginx安装完成。

安装mysql

[root@localhost ~]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -

C /usr/local

[root@localhost ~]# cd /usr/local

[root@localhost local]# ln -s mysql-5.5.15-linux2.6-i686/ mysql

[root@localhost local]# cd mysql

[root@localhost mysql]# groupadd mysql

[root@localhost mysql]# useradd -r -g mysql mysql

[root@localhost mysql]# chown -R mysql .

[root@localhost mysql]# chgrp -R mysql .

[root@localhost mysql]# scripts/mysql_install_db --user=mysql

[root@localhost mysql]# chown -R root .

[root@localhost mysql]# chown -R mysql data

[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf

[root@localhost mysql]# bin/mysqld_safe --user=mysql &

[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld

编辑库文件

[root@localhost mysql]# cd /etc/ld.so.conf.d/

[root@localhost ld.so.conf.d]# vim mysql.conf

编辑结果

/usr/local/mysql/lib

编辑头文件

[root@localhost ld.so.conf.d]# cd /usr/local/mysql

[root@localhost mysql]# cd /usr/include/

[root@localhost include]# ln -s /usr/local/mysql/include mysql

Mysql安装完成。

安装Php

[root@localhost ~]# tar -jxvf php-5.3.7.tar.bz2 -C /usr/local/src

[root@localhost ~]# cd /usr/local/src

[root@localhost src]# cd php-5.3.7/

[root@localhost php-5.3.7]# ./configure --prefix=/usr/local/php --with-

apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-

mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring=all

[root@localhost php-5.3.7]# rpm -qa |grep -E "xml|png|zlib|jpeg|freetype"

[root@localhost php-5.3.7]# make

[root@localhost php-5.3.7]# make install

安装完成。