lnmp 环境搭建 (源码)
2013-09-14 12:11
232 查看
LNMP就是:Linux系统下 Nginx+MySQL+PHP 网站服务器架构。其实就是一个用Linux Shell编写的可以为CentOS/RadHat、Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。但是而这四种软件均为免费开源软件,所以组合到一起,也就能成为一个免费、高效、扩展性强的网站服务系统。
1、Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。 代表版有:debian、centos、ubuntu、fedora、gentoo等。 2、Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务 器。 3、Mysql是一个小型关系型数据库管理系统。 4、PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
LNMP 的环境搭建流程:搭建平台:linux5.4 系统需用软件包 : mysql -5.5.15.-linux2.6-i386.tar.gzp pcre-devel-6.6-2.e15_1.7.i386.rpm libevent-2.0.16-stable.tar.gz nginx-1.0.11.tar.gz php-5.4.13.tar.bz2
对mysql源码包进行拆解:
![](http://img1.51cto.com/attachment/201309/182832926.jpg)
![](http://img1.51cto.com/attachment/201309/182834960.jpg)
进入拆解目录:为方便应用可以创建一个连接,则就可以直接通过连接进入 mysql 目录里;
![](http://img1.51cto.com/attachment/201309/182836369.jpg)
通过连接进入mysql目录;查看install文件然后依照此进行配置编译安装;
![](http://img1.51cto.com/attachment/201309/182839896.jpg)
依照查看INSTALL-BINARY 文件内容如下步骤进行按部操作:
![](http://img1.51cto.com/attachment/201309/182840711.jpg)
然后再来到拆解mysql目录创建组合用户,用户要求在这个组内;且用户具有可读权限的所有者为这个组;
![](http://img1.51cto.com/attachment/201309/182842781.jpg)
然后对组下这个用户的数据库进行初始化操作:
![](http://img1.51cto.com/attachment/201309/182846739.jpg)
初始化之后然后权限的更改为root管理员;
![](http://img1.51cto.com/attachment/201309/182849580.jpg)
而唯一的区别的data目录权限, 因为它是存放数据库的日常目录所有者权限仍属于这个组;
![](http://img1.51cto.com/attachment/201309/182852919.jpg)
接着就需要从下面这个资助目录中拷贝mysql的配置脚本文件,直接拷贝到新建的my.cnf的文件下:
![](http://img1.51cto.com/attachment/201309/182854319.jpg)
然后再从中拷贝一个能够提供服务的控制脚本文件;
![](http://img1.51cto.com/attachment/201309/182901757.jpg)
然后测试进行启动mysql、如成功启动再检测其端口为 3306 ;
![](http://img1.51cto.com/attachment/201309/182901474.jpg)
接下来是管理目录、编辑 /etc/profile 重新设置path系统环境变量:( 添加mysql配置管理路径 )
![](http://img1.51cto.com/attachment/201309/182902469.jpg)
然后source是配置即时生效(执行指令 . /etc/profile),然后再搜索环境变量值、查看验证是否添加生效;
![](http://img1.51cto.com/attachment/201309/182903910.jpg)
接下来对库文件 和头文件操作;编写 /etc/ld.so.conf.d/mysql.conf 文件,添加这个库模块的路径;目的是指明这个位置、以便系统能够找到:
![](http://img1.51cto.com/attachment/201309/182903991.jpg)
添加之后刷新、检测模块是否已经加载进去了:
![](http://img1.51cto.com/attachment/201309/182905253.jpg)
然后进行设置 头文件,给他一个连接,在/usr目录下:
![](http://img1.51cto.com/attachment/201309/182906570.jpg)
还有系统的初始化安装root用户是没有密码保障的,没有任何机制的可以直接进入;所以这里就需要对它作用户口令的设置:
![](http://img1.51cto.com/attachment/201309/200321338.jpg)
mysql安装配置至此完成。
接着是 nginx ;因为假设nginx服务、不仅需要 pcre 的支持,是一个关于正则表达式的库;还需一个libevent软件包、则可以把它理解为是一个事件的库的定义。先对 libevent 进行拆解:(对于第三方软件的拆解路径一般都是在 /usr/local/s)
![](http://img1.51cto.com/attachment/201309/182908327.jpg)
![](http://img1.51cto.com/attachment/201309/182912664.jpg)
进行配置添加一个配置文件目录参数:
![](http://img1.51cto.com/attachment/201309/182915256.jpg)
而后进行编译安装:
![](http://img1.51cto.com/attachment/201309/182919260.jpg)
接着在对 库文件进行设置、编辑指明一个libevent 配置文件路径:
![](http://img1.51cto.com/attachment/201309/182920372.jpg)
编辑完成、即可进行刷新检测路径是否加载进去:
![](http://img1.51cto.com/attachment/201309/182922783.jpg)
还是对头文件设置一个文件连接:
![](http://img1.51cto.com/attachment/201309/182925205.jpg)
挂载关盘、安装pcre rpm包:( 它是一个关于正则表达式的库、用它可以解决C语言中使用正则表达式的问题 )
![](http://img1.51cto.com/attachment/201309/182928521.jpg)
安装之后,看nginx 源码包,依然是拆解源码包先:
![](http://img1.51cto.com/attachment/201309/182929442.jpg)
![](http://img1.51cto.com/attachment/201309/182931366.jpg)
因为 nginx 也是一个服务,也是需要有运行者和管理者的;那就要添加一个组和用户;且用户在组之下;( 对安装nginx服务是 可以在安装目录查看名为 INSTALL 的安装过程手册,就可以依照上面的步骤一步步安装。 )
![](http://img1.51cto.com/attachment/201309/182932727.jpg)
开始进行配置nginx所需求的必要参数选项:
![](http://img1.51cto.com/attachment/201309/182933721.jpg)
![](http://img1.51cto.com/attachment/201309/200148427.jpg)
配置完成没有问题比那可以直接进行make编译及makeinstall安装:
![](http://img1.51cto.com/attachment/201309/200153599.jpg)
![](http://img1.51cto.com/attachment/201309/200158741.jpg)
来到安装目录下查看系统管理员的才具有的权限设置sbin下的配置文件;
![](http://img1.51cto.com/attachment/201309/200203326.jpg)
作为一个服务、应该编辑设置一些参数选项、来定义一些变量:也就是需要编写一个控制脚本:
![](http://img1.51cto.com/attachment/201309/200210624.jpg)
![](http://img1.51cto.com/attachment/201309/200212840.jpg)
编写好脚本之后再创建一个临时文件、用来放置服务应用的缓存文件;
![](http://img1.51cto.com/attachment/201309/200214779.jpg)
然后都nginx服务进行启动,也就是相当于httpd服务启动开启啦80端口一样;但是还要给予这个服务所有者的可执行权限。
![](http://img1.51cto.com/attachment/201309/200218595.jpg)
启动nginx服务 检测到80端口;
![](http://img1.51cto.com/attachment/201309/200220864.jpg)
还可以进行设置添加一些chkconfig语句;自动启动的级别及启动号和终止号;也可以注释指明是一个服务。
![](http://img1.51cto.com/attachment/201309/200223587.jpg)
然后进行添加依然照常检测一下是否成功;
![](http://img1.51cto.com/attachment/201309/200224274.jpg)
可以查看在3级别的启动启动号和终止号;
![](http://img1.51cto.com/attachment/201309/200227121.jpg)
完成之后访问地址测试成功。
![](http://img1.51cto.com/attachment/201309/200323783.jpg)
至此 nginx服务也配置ok;
php
接下来 php 安装配置、开始也依然是拆包;
![](http://img1.51cto.com/attachment/201309/200232521.jpg)
拆解完成进入拆解目录查看查看 INSTALL 文件;然后根据此步骤进行安装;
![](http://img1.51cto.com/attachment/201309/200240216.jpg)
首先呢 还是开始进行configure配置、help试着查看需求帮助,然后进行配置添加必要的参数选项:
![](http://img1.51cto.com/attachment/201309/200245412.jpg)
![](http://img1.51cto.com/attachment/201309/200250871.jpg)
配置成功之后便可以直接执行make编译且同时makeinstall安装:
![](http://img1.51cto.com/attachment/201309/200255679.jpg)
然后回到/usr/local/php/目录下做一些简单的处理: bin/ 目录也类似是安装配置的工具目录、且具有可执行性;而bin/php/是一些模块库,因此就希望把bin目录就添加打破系统环境变量的目录中去;给他个路径明确指明位置以便系统调用。 然后就是去编辑 vim /etc/profile (添加环境变量)
![](http://img1.51cto.com/attachment/201309/200258920.jpg)
![](http://img1.51cto.com/attachment/201309/200302287.jpg)
添加之后检测是否添加成功:
![](http://img1.51cto.com/attachment/201309/200259177.jpg)
但是此刻php还需要有一个fastcgi结合; 因为lighttpd 提供了一个接口,外部程式支持的FastCGI接口,FastCGI是一个独立于平台,和服务器,应用程序独立的一个接口fastcgi简介:1:fastcgi 消除了很多cgi的局限性,cgi在每个请求完成后会自动重新启动,导致性能不佳
2:fastcig 保持进程一直运行并等待请求,消除了fork过程,减少了整体启动和消亡的时 间.
3:cgi程序 通过管道和服务器进行通讯,fastcgi通过unix套接字或者TCP/IP和服务器进 行通讯,也就是说fastcgi选项不仅可以运行于网络服务器本身,而且包括所有 的网络
4:fastcgi 内部提供了一个负载均衡器,对比apache+mod_php,fastcgi提供的额外安全 性,可以运行于不同的权限服务器.
依然在源码目录里开始实现fpm 9000端口服务;既然是服务肯定都有自己的控制脚本开设置启动;在源码目录里拷贝初始化文件到烯烃进程目录中;然后在对此添加用户所有者可执行权限
![](http://img1.51cto.com/attachment/201309/200307675.jpg)
然后再拷贝配置脚本文件;
![](http://img1.51cto.com/attachment/201309/200309830.jpg)
然后启动 fpm 9000 端口服务;而后查看进程、一个主进程、两个子进程;
![](http://img1.51cto.com/attachment/201309/200314216.jpg)
完成之后再用 chkconfig进行管理、添加fpm查询系统的启动级别2345;
![](http://img1.51cto.com/attachment/201309/200315846.jpg)
当php的请求过来访问时,则就需要在nginx服务配置文件更改站点主目录的index.php路径;编辑 /etc/nginx/nginx.conf 配置脚本文件进行设置添加:
![](http://img1.51cto.com/attachment/201309/200318825.jpg)
![](http://img1.51cto.com/attachment/201309/200319667.jpg)
更改成功之后比那可重启一下 nginx 服务及php-fpm服务:
![](http://img1.51cto.com/attachment/201309/200320436.jpg)
至此是php配置安装经过。
最后访问测试
到站点主目录先设置index.php文件,编辑添加一个php函数能够加载php主页;
![](http://img1.51cto.com/attachment/201309/201028186.jpg)
设置完成通过地址访问:
![](http://img1.51cto.com/attachment/201309/201032787.jpg)
再回到站点主目录里 添加函数使之连接到mysql;mysql启动时会显示ok、终止时访问显示NO;
![](http://img1.51cto.com/attachment/201309/201033188.jpg)
设置成功后进行地址访问 显示 NO ;
![](http://img1.51cto.com/attachment/201309/201035931.jpg)
启动mysql时:再进行地址访问查看显示 OK
![](http://img1.51cto.com/attachment/201309/201039556.jpg)
![](http://img1.51cto.com/attachment/201309/201040768.jpg)
lnmp环境搭建过程安装便是如此。
1、Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。 代表版有:debian、centos、ubuntu、fedora、gentoo等。 2、Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务 器。 3、Mysql是一个小型关系型数据库管理系统。 4、PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
LNMP 的环境搭建流程:搭建平台:linux5.4 系统需用软件包 : mysql -5.5.15.-linux2.6-i386.tar.gzp pcre-devel-6.6-2.e15_1.7.i386.rpm libevent-2.0.16-stable.tar.gz nginx-1.0.11.tar.gz php-5.4.13.tar.bz2
对mysql源码包进行拆解:
![](http://img1.51cto.com/attachment/201309/182832926.jpg)
![](http://img1.51cto.com/attachment/201309/182834960.jpg)
进入拆解目录:为方便应用可以创建一个连接,则就可以直接通过连接进入 mysql 目录里;
![](http://img1.51cto.com/attachment/201309/182836369.jpg)
通过连接进入mysql目录;查看install文件然后依照此进行配置编译安装;
![](http://img1.51cto.com/attachment/201309/182839896.jpg)
依照查看INSTALL-BINARY 文件内容如下步骤进行按部操作:
![](http://img1.51cto.com/attachment/201309/182840711.jpg)
然后再来到拆解mysql目录创建组合用户,用户要求在这个组内;且用户具有可读权限的所有者为这个组;
![](http://img1.51cto.com/attachment/201309/182842781.jpg)
然后对组下这个用户的数据库进行初始化操作:
![](http://img1.51cto.com/attachment/201309/182846739.jpg)
初始化之后然后权限的更改为root管理员;
![](http://img1.51cto.com/attachment/201309/182849580.jpg)
而唯一的区别的data目录权限, 因为它是存放数据库的日常目录所有者权限仍属于这个组;
![](http://img1.51cto.com/attachment/201309/182852919.jpg)
接着就需要从下面这个资助目录中拷贝mysql的配置脚本文件,直接拷贝到新建的my.cnf的文件下:
![](http://img1.51cto.com/attachment/201309/182854319.jpg)
然后再从中拷贝一个能够提供服务的控制脚本文件;
![](http://img1.51cto.com/attachment/201309/182901757.jpg)
然后测试进行启动mysql、如成功启动再检测其端口为 3306 ;
![](http://img1.51cto.com/attachment/201309/182901474.jpg)
接下来是管理目录、编辑 /etc/profile 重新设置path系统环境变量:( 添加mysql配置管理路径 )
![](http://img1.51cto.com/attachment/201309/182902469.jpg)
然后source是配置即时生效(执行指令 . /etc/profile),然后再搜索环境变量值、查看验证是否添加生效;
![](http://img1.51cto.com/attachment/201309/182903910.jpg)
接下来对库文件 和头文件操作;编写 /etc/ld.so.conf.d/mysql.conf 文件,添加这个库模块的路径;目的是指明这个位置、以便系统能够找到:
![](http://img1.51cto.com/attachment/201309/182903991.jpg)
添加之后刷新、检测模块是否已经加载进去了:
![](http://img1.51cto.com/attachment/201309/182905253.jpg)
然后进行设置 头文件,给他一个连接,在/usr目录下:
![](http://img1.51cto.com/attachment/201309/182906570.jpg)
还有系统的初始化安装root用户是没有密码保障的,没有任何机制的可以直接进入;所以这里就需要对它作用户口令的设置:
![](http://img1.51cto.com/attachment/201309/200321338.jpg)
mysql安装配置至此完成。
接着是 nginx ;因为假设nginx服务、不仅需要 pcre 的支持,是一个关于正则表达式的库;还需一个libevent软件包、则可以把它理解为是一个事件的库的定义。先对 libevent 进行拆解:(对于第三方软件的拆解路径一般都是在 /usr/local/s)
![](http://img1.51cto.com/attachment/201309/182908327.jpg)
![](http://img1.51cto.com/attachment/201309/182912664.jpg)
进行配置添加一个配置文件目录参数:
![](http://img1.51cto.com/attachment/201309/182915256.jpg)
而后进行编译安装:
![](http://img1.51cto.com/attachment/201309/182919260.jpg)
接着在对 库文件进行设置、编辑指明一个libevent 配置文件路径:
![](http://img1.51cto.com/attachment/201309/182920372.jpg)
编辑完成、即可进行刷新检测路径是否加载进去:
![](http://img1.51cto.com/attachment/201309/182922783.jpg)
还是对头文件设置一个文件连接:
![](http://img1.51cto.com/attachment/201309/182925205.jpg)
挂载关盘、安装pcre rpm包:( 它是一个关于正则表达式的库、用它可以解决C语言中使用正则表达式的问题 )
![](http://img1.51cto.com/attachment/201309/182928521.jpg)
安装之后,看nginx 源码包,依然是拆解源码包先:
![](http://img1.51cto.com/attachment/201309/182929442.jpg)
![](http://img1.51cto.com/attachment/201309/182931366.jpg)
因为 nginx 也是一个服务,也是需要有运行者和管理者的;那就要添加一个组和用户;且用户在组之下;( 对安装nginx服务是 可以在安装目录查看名为 INSTALL 的安装过程手册,就可以依照上面的步骤一步步安装。 )
![](http://img1.51cto.com/attachment/201309/182932727.jpg)
开始进行配置nginx所需求的必要参数选项:
![](http://img1.51cto.com/attachment/201309/182933721.jpg)
![](http://img1.51cto.com/attachment/201309/200148427.jpg)
配置完成没有问题比那可以直接进行make编译及makeinstall安装:
![](http://img1.51cto.com/attachment/201309/200153599.jpg)
![](http://img1.51cto.com/attachment/201309/200158741.jpg)
来到安装目录下查看系统管理员的才具有的权限设置sbin下的配置文件;
![](http://img1.51cto.com/attachment/201309/200203326.jpg)
作为一个服务、应该编辑设置一些参数选项、来定义一些变量:也就是需要编写一个控制脚本:
![](http://img1.51cto.com/attachment/201309/200210624.jpg)
![](http://img1.51cto.com/attachment/201309/200212840.jpg)
编写好脚本之后再创建一个临时文件、用来放置服务应用的缓存文件;
![](http://img1.51cto.com/attachment/201309/200214779.jpg)
然后都nginx服务进行启动,也就是相当于httpd服务启动开启啦80端口一样;但是还要给予这个服务所有者的可执行权限。
![](http://img1.51cto.com/attachment/201309/200218595.jpg)
启动nginx服务 检测到80端口;
![](http://img1.51cto.com/attachment/201309/200220864.jpg)
还可以进行设置添加一些chkconfig语句;自动启动的级别及启动号和终止号;也可以注释指明是一个服务。
![](http://img1.51cto.com/attachment/201309/200223587.jpg)
然后进行添加依然照常检测一下是否成功;
![](http://img1.51cto.com/attachment/201309/200224274.jpg)
可以查看在3级别的启动启动号和终止号;
![](http://img1.51cto.com/attachment/201309/200227121.jpg)
完成之后访问地址测试成功。
![](http://img1.51cto.com/attachment/201309/200323783.jpg)
至此 nginx服务也配置ok;
php
接下来 php 安装配置、开始也依然是拆包;
![](http://img1.51cto.com/attachment/201309/200232521.jpg)
拆解完成进入拆解目录查看查看 INSTALL 文件;然后根据此步骤进行安装;
![](http://img1.51cto.com/attachment/201309/200240216.jpg)
首先呢 还是开始进行configure配置、help试着查看需求帮助,然后进行配置添加必要的参数选项:
![](http://img1.51cto.com/attachment/201309/200245412.jpg)
![](http://img1.51cto.com/attachment/201309/200250871.jpg)
配置成功之后便可以直接执行make编译且同时makeinstall安装:
![](http://img1.51cto.com/attachment/201309/200255679.jpg)
然后回到/usr/local/php/目录下做一些简单的处理: bin/ 目录也类似是安装配置的工具目录、且具有可执行性;而bin/php/是一些模块库,因此就希望把bin目录就添加打破系统环境变量的目录中去;给他个路径明确指明位置以便系统调用。 然后就是去编辑 vim /etc/profile (添加环境变量)
![](http://img1.51cto.com/attachment/201309/200258920.jpg)
![](http://img1.51cto.com/attachment/201309/200302287.jpg)
添加之后检测是否添加成功:
![](http://img1.51cto.com/attachment/201309/200259177.jpg)
但是此刻php还需要有一个fastcgi结合; 因为lighttpd 提供了一个接口,外部程式支持的FastCGI接口,FastCGI是一个独立于平台,和服务器,应用程序独立的一个接口fastcgi简介:1:fastcgi 消除了很多cgi的局限性,cgi在每个请求完成后会自动重新启动,导致性能不佳
2:fastcig 保持进程一直运行并等待请求,消除了fork过程,减少了整体启动和消亡的时 间.
3:cgi程序 通过管道和服务器进行通讯,fastcgi通过unix套接字或者TCP/IP和服务器进 行通讯,也就是说fastcgi选项不仅可以运行于网络服务器本身,而且包括所有 的网络
4:fastcgi 内部提供了一个负载均衡器,对比apache+mod_php,fastcgi提供的额外安全 性,可以运行于不同的权限服务器.
依然在源码目录里开始实现fpm 9000端口服务;既然是服务肯定都有自己的控制脚本开设置启动;在源码目录里拷贝初始化文件到烯烃进程目录中;然后在对此添加用户所有者可执行权限
![](http://img1.51cto.com/attachment/201309/200307675.jpg)
然后再拷贝配置脚本文件;
![](http://img1.51cto.com/attachment/201309/200309830.jpg)
然后启动 fpm 9000 端口服务;而后查看进程、一个主进程、两个子进程;
![](http://img1.51cto.com/attachment/201309/200314216.jpg)
完成之后再用 chkconfig进行管理、添加fpm查询系统的启动级别2345;
![](http://img1.51cto.com/attachment/201309/200315846.jpg)
当php的请求过来访问时,则就需要在nginx服务配置文件更改站点主目录的index.php路径;编辑 /etc/nginx/nginx.conf 配置脚本文件进行设置添加:
![](http://img1.51cto.com/attachment/201309/200318825.jpg)
![](http://img1.51cto.com/attachment/201309/200319667.jpg)
更改成功之后比那可重启一下 nginx 服务及php-fpm服务:
![](http://img1.51cto.com/attachment/201309/200320436.jpg)
至此是php配置安装经过。
最后访问测试
到站点主目录先设置index.php文件,编辑添加一个php函数能够加载php主页;
![](http://img1.51cto.com/attachment/201309/201028186.jpg)
设置完成通过地址访问:
![](http://img1.51cto.com/attachment/201309/201032787.jpg)
再回到站点主目录里 添加函数使之连接到mysql;mysql启动时会显示ok、终止时访问显示NO;
![](http://img1.51cto.com/attachment/201309/201033188.jpg)
设置成功后进行地址访问 显示 NO ;
![](http://img1.51cto.com/attachment/201309/201035931.jpg)
启动mysql时:再进行地址访问查看显示 OK
![](http://img1.51cto.com/attachment/201309/201039556.jpg)
![](http://img1.51cto.com/attachment/201309/201040768.jpg)
lnmp环境搭建过程安装便是如此。
相关文章推荐
- 总结CentOS 6.0下搭建LNMP环境(源码安装)
- LNMP环境的源码搭建
- 搭建lnmp环境(nginx1.9.15-源码)
- 源码搭建LNMP环境
- 源码编译安装,搭建LNMP环境(Linux+Nginx+MySQL+PHP)
- lnmp环境的源码搭建
- (三)lnmp环境的搭建:mysql源码安装
- 搭建lnmp环境(nginx1.9.15-源码)
- 小谈源码搭建lnmp环境
- Linux下源码搭建LNMP环境
- lnmp环境搭建完全手册(四)——lnmp搭建(源码安装)
- 源码搭建lnmp环境
- 搭建lnmp环境(php7.1.8-源码)
- CentOS 7源码编译安装PHP5.6和Nginx1.7.9及MySQL(搭建LNMP环境)
- lnmp环境搭建(源码安装)
- Centos6.5下源码搭建lnmp环境
- lnmp环境的搭建(源码)
- lnmp环境搭建完全手册(四)——lnmp搭建(源码安装)
- LNMP源码编译环境【搭建动态网站】
- 运维机试必考题--源码搭建LNMP环境