★LNMP简介(来自百度百科)
LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
优点:
◆Nginx 安装非常的简单,配置文件非常简洁(还能够支持perl语法)。Nginx支持平滑加载新的配置,还能够在不间断服务的情况下进行软件版本的升级
◆作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率。
◆作为负载均衡服务器:Nginx 既可以在内部直接支持Rails和PHP,也可以支持作为 HTTP代理服务器对外进行服务。Nginx 用C编写,不论是系统资源开销还是CPU使用效率都比Perlbal要好的多。
◆作为邮件代理服务器:Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last/fm 描述了成功并且美妙的使用经验。
★安装Mysql(方法同lamp(1)http://caoyue.blog.51cto.com/9876038/1610525 )
★安装php
下载源码包 wget http://cn2.php.net/distributions/php-5.4.37.tar.bz2
解压 tar jxf php-5.4.37.tar.bz2
useradd -s /sbin/nologin php-fpm <== -s参数指定用户登录的shell文件
lamp里不需要,是因为在lamp中php是作为一个模块
给apache使用的;而在lnmp中php是以一个单独程序
的角色存在的
cd php-5.4.37 进行编译
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --disable-ipv6 --with-curl编译过程中会出现如同lamp(1)中的报错提示,排错参考先前文档。
以及新的报错:
configure: error: Please reinstall the libcurl distribution -easy.h should be in <curl-dir>/include/curl/
原因是curl的dev包没有安装,需安装curl-devel,yum -y install curl-devel
make && make install
cp php.ini-production /usr/local/php/etc/php.ini
拷贝启动脚本:cp php-5.4.37/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
chmod 755 /etc/init.d/php-fpm
chkconfig --add php-fpm
service php-fpm start
chkconfig php-fpm on
★安装Nginx
cd /usr/local/src/
下载源码包 wget http://nginx.org/download/nginx-1.6.2.tar.gz
解压 tar zxvf nginx-1.6.2.tar.gz
cd nginx-1.6.2
编译 ./configure --prefix=/usr/local/nginx --with-pcre
make
报错:./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.解决:yum -y install pcre-devel
如果不是pcre而是--with-openssl=<path> options.需要安装openssl openssl-devel
make install
启动nginx:/usr/local/nginx/sbin/nginx
★配置解析php
编辑配置文件 vim /usr/local/nginx/conf/nginx.conf
把下面的配置(65行开始),前面的#删除,并更改fastcgi_param SCRIPT_FILENAME 那一行
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}/usr/local/nginx/sbin/nginx -s reload 重新加载
创建一个php文件,并加入以下内容
vim /usr/local/nginx/html/1.php
增加
<?php
phpinfo();
?>进行以下测试:curl localhost/1.php
1.php成功解析