源码搭建LNMP环境

LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构,Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。

LAMP(Linux+Apache+Mysql+Perl/PHP/Python)也是一组常用来搭建动态网站或者服务器的开源软件,虽然nginx和apache都能实现网站服务器的搭建,但是两者还是有不小的差距的,下面我们来简单介绍一下。

Apache:进程方式处理用户的请求,每个时刻保持8个空闲的子进程,当用户并发连接请求比较多的时候,相应的子进程也会很多,而每个进程要占用内存空间,所以内存空间占用大,效率低,一般情况下,同一时刻并发连接请求最多不会超过1024个。Apache采用select机制也可以叫轮训机制,效率较低,但是从另一方面来说,这种机制是apache的网站构架很稳定。

Nginx:线程方式处理用户的请求,和apache独占内存不同的是nginx是共享内存的,所以只需要开少量的进程,当有用户请求时,再有这些进程开辟一些线程就行了,这些线程是共享这一个进程的内存空间,但是不好的是当进程崩溃之后,所有由进程开辟的线程也都会崩溃,所以较apache稳定性要差得多。Nginx采用epoll机制也可以叫时间通知机制,效率较select机制要高得多。同一时刻并发送连接请求最高可以达到50000个。

从上面可以看出Apache和nginx各有各的优点,下面进行LNMP环境的搭建

软件环境:nginx-1.0.11.tar.gz 、mysql-5.5.15-linux2.6-i686.tar.gz、php-5.4.13.tar.bz2

、libevent-2.0.16-stable.tar.gz、pcre-6.6-2.e15_1.7.i389.rpm、pcre-devel-6.6-2.e15_1.7.i389.rpm

一、Nginx的安装

内容汇集:

pcre(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正规表达式库.这些在执行正规表达式模式匹配时用。与Perl 5同样的语法和语义是很有用的。 Boost太庞大了,使用boost regex后,程序的编译速度明显变慢。测试了一下,同样一个程序,使用boost::regex编译时需要3秒,而使用pcre不到1秒,因此改用pcre来解决C语言中使用正则表达式的问题。

Libevent:是一个强大的跨平台的事件通知库,如果不想被多线程困扰,可以考虑这个平台,它从1.2.* 版本开始支持轻量级的http server 开发支持。随后陆续还推出轻量级 DNS server、RPC server 开发支持,这组事件API提供了一种当某个指定文件描述符有效或时间到达时执行某个函数的机制,在使用事件API前必须使用event_init()初始化,In order to process events, an application needs to call。

1、拆解并安装

tar -zxvf libevent-2.0.16-stable.tar.gz -C /usr/local/src

./configure --prefix=/usr/local/libevent

make && make install

2、处理头文件和库文件

库文件的处理:

编辑/etc/ld.so.conf.d/libevent.conf,内容如下

/usr/local/libevent/lib

刷新并查看

头文件的处理:

ln -s /usr/local/libevent/include /usr/include/libevent

3、为了让nginx支持pcre(perl库)的话还需要安装一个名为pcre的软件包

经查看后发现已经有安装,但是有些额外的库放在名为pcre-devel的软件包内,安装该软件包

时间: 2024-08-07 23:42:50

源码搭建LNMP环境的相关文章

CentOS 6.7 源码搭建LNMP架构部署动态网站环境

源码搭建LNMP架构部署动态网站环境 Nginx 简介 Nginx是一款相当优秀的用于部署动态网站的服务程序,Nginx具有不错的稳定性.丰富的功能以及占用较少的系统资源等独特特性. Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器.Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例

Linux系统下源码搭建LAMP环境

Step0:准备工作 ①将需要的所有软件包分类传到/root/目录下. ②将所有的源码包进行解压缩到指定的路径(/usr/local/src)除了phpmyadmin 更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/webkf/PHP/

云服务器 ECS 部署LNMP:搭建LNMP环境(CentOS 6)

搭建LNMP环境(CentOS 6) 本文档介绍如何使用一台普通配置的云服务器ECS实例搭建LNMP平台的web环境. Linux:自由和开放源码的类UNIX操作系统. Nginx:轻量级网页服务器.反向代理服务器. MySQL:关系型数据库管理系统. PHP:主要适用于Web开发领域的一种脚本语言. 适用对象 适用于熟悉Linux操作系统,刚开始使用阿里云进行建站的个人用户. 基本流程 使用云服务器 ECS 搭建LNMP平台的操作步骤如下: 准备编译环境 安装nginx 安装mysql 安装p

centos 6.5 搭建lnmp环境

centos 6.5 搭建lnmp环境   建议安装顺序: mysql------->>编译php---->>编译nginx 最麻烦:编译php出各种错. 最简单:mysql 软件版本:   libiconv-1.13.tar.gz libmcrypt-2.5.8.tar.gz mcrypt-2.6.8.tar.gz mhash-0.9.9.9.tar.gz memcache-2.2.5.tgz PDO_MYSQL-1.0.2.tgz imagick-3.1.2.tgz pcre-

源码搭建LAMP(Linux+Apache+Mysql+PHP)环境

Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大Web应用程序平台.随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注.从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案.今天就以LAMP(

tomcat源码编译和环境搭建

关于tomcat源码的编译和环境搭建自己也是拖了一段时间,今天还是硬着头皮来做一做,还是有所收获. tomcat源码的编译还是首选ant,作为apache的顶级项目ant,可以参见下面的链接进行下载,下载一个二进制运行包即可. http://ant.apache.org/bindownload.cgi 然后就需要在path中配置了. 简单的校验 C:\Users\jeanron>ant -version Apache Ant(TM) version 1.9.5 compiled on May 3

centos LAMP环境源码搭建配置教程

平台环境: Centos6.5下载: http://mirror.symnds.com/distributions/CentOS-vault/6.5/isos/x86_64/CentOS-6.5-x86_64-bin-DVD1.iso Cento6.5操作系统:硬盘100G,内存1G,安装中安装java.perl.base及chinese支持的所有包即可 安装LAMP环境之前,必须先安装gcc,可以直接yum -y install gcc-* 1.apache源码安装 先下载httpd源码包软件

学习centos之快速搭建LNMP环境

以前在centos下安装软件都是喜欢源码安装,不过昨天因为一个事情需要一个centos 下的LNMP环境.反倒不会搞了,今天特意记录下,以备后续使用. 一.安装nginx 我们先来安装nginx,如下: yum -y install nginx 通过上图,我们可以看到目前的yum源中是没有nginx软件包的.我们需要安装包含nginx的yum源,如下: rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-ce

centos 7.2下搭建LNMP环境教程_php实例

本机环境:服务器是阿里云ECS:使用的镜像是:公共镜像 CENTOS 7.2  一.nginx安装 1.下载对应当前系统版本的nginx包(package) ​ wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 2.建立nginx的yum仓库(默认yum是没有nginx的) ​ rpm -ivh nginx-release-centos-7-0.el7.n