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等。
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源码包进行拆解:
进入拆解目录:为方便应用可以创建一个连接,则就可以直接通过连接进入 mysql 目录里;
通过连接进入mysql目录;查看install文件然后依照此进行配置编译安装;
依照查看INSTALL-BINARY 文件内容如下步骤进行按部操作:
然后再来到拆解mysql目录创建组合用户,用户要求在这个组内;且用户具有可读权限的所有者为这个组;
然后对组下这个用户的数据库进行初始化操作:
初始化之后然后权限的更改为root管理员;
而唯一的区别的data目录权限, 因为它是存放数据库的日常目录所有者权限仍属于这个组;
接着就需要从下面这个资助目录中拷贝mysql的配置脚本文件,直接拷贝到新建的my.cnf的文件下:
然后再从中拷贝一个能够提供服务的控制脚本文件;
然后测试进行启动mysql、如成功启动再检测其端口为 3306 ;
接下来是管理目录、编辑 /etc/profile 重新设置path系统环境变量:
( 添加mysql配置管理路径 )
然后source是配置即时生效(执行指令 . /etc/profile),然后再搜索环境变量值、查看验证是否添加生效;
接下来对库文件 和头文件操作;
编写 /etc/ld.so.conf.d/mysql.conf 文件,添加这个库模块的路径;目的是指明这个位置、以便系统能够找到:
添加之后刷新、检测模块是否已经加载进去了:
然后进行设置 头文件,给他一个连接,在/usr目录下:
还有系统的初始化安装root用户是没有密码保障的,没有任何机制的可以直接进入;所以这里就需要对它作用户口令的设置:
mysql安装配置至此完成。
接着是 nginx ;
因为假设nginx服务、不仅需要 pcre 的支持,是一个关于正则表达式的库;还需一个libevent软件包、则可以把它理解为是一个事件的库的定义。
先对 libevent 进行拆解:
(对于第三方软件的拆解路径一般都是在 /usr/local/s)
进行配置添加一个配置文件目录参数:
而后进行编译安装:
接着在对 库文件进行设置、编辑指明一个libevent 配置文件路径:
编辑完成、即可进行刷新检测路径是否加载进去:
还是对头文件设置一个文件连接:
挂载关盘、安装pcre rpm包:
( 它是一个关于正则表达式的库、用它可以解决C语言中使用正则表达式的问题 )
安装之后,看nginx 源码包,依然是拆解源码包先:
因为 nginx 也是一个服务,也是需要有运行者和管理者的;那就要添加一个组和用户;
且用户在组之下;
( 对安装nginx服务是 可以在安装目录查看名为 INSTALL 的安装过程手册,就可以依照上面的步骤一步步安装。 )
开始进行配置nginx所需求的必要参数选项:
配置完成没有问题比那可以直接进行make编译及makeinstall安装:
来到安装目录下查看系统管理员的才具有的权限设置sbin下的配置文件;
作为一个服务、应该编辑设置一些参数选项、来定义一些变量:也就是需要编写一个控制脚本:
编写好脚本之后再创建一个临时文件、用来放置服务应用的缓存文件;
然后都nginx服务进行启动,也就是相当于httpd服务启动开启啦80端口一样;
但是还要给予这个服务所有者的可执行权限。
启动nginx服务 检测到80端口;
还可以进行设置添加一些chkconfig语句;自动启动的级别及启动号和终止号;也可以注释指明是一个服务。
然后进行添加依然照常检测一下是否成功;
可以查看在3级别的启动启动号和终止号;
完成之后访问地址测试成功。
至此 nginx服务也配置ok;
php
接下来 php 安装配置、开始也依然是拆包;
拆解完成进入拆解目录查看查看 INSTALL 文件;然后根据此步骤进行安装;
首先呢 还是开始进行configure配置、help试着查看需求帮助,然后进行配置添加必要的参数选项:
配置成功之后便可以直接执行make编译且同时makeinstall安装:
然后回到/usr/local/php/目录下做一些简单的处理: bin/ 目录也类似是安装配置的工具目录、且具有可执行性;而bin/php/是一些模块库,因此就希望把bin目录就添加打破系统环境变量的目录中去;给他个路径明确指明位置以便系统调用。
然后就是去编辑 vim /etc/profile (添加环境变量)
添加之后检测是否添加成功:
但是此刻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端口服务;既然是服务肯定都有自己的控制脚本开设置启动;
在源码目录里拷贝初始化文件到烯烃进程目录中;
然后在对此添加用户所有者可执行权限
然后再拷贝配置脚本文件;
然后启动 fpm 9000 端口服务;而后查看进程、一个主进程、两个子进程;
完成之后再用 chkconfig进行管理、添加fpm查询系统的启动级别2345;
当php的请求过来访问时,则就需要在nginx服务配置文件更改站点主目录的index.php路径;
编辑 /etc/nginx/nginx.conf 配置脚本文件进行设置添加:
更改成功之后比那可重启一下 nginx 服务及php-fpm服务:
至此是php配置安装经过。
最后访问测试
到站点主目录先设置index.php文件,编辑添加一个php函数能够加载php主页;
设置完成通过地址访问:
再回到站点主目录里 添加函数使之连接到mysql;mysql启动时会显示ok、终止时访问显示NO;
设置成功后进行地址访问 显示 NO ;
启动mysql时:再进行地址访问查看显示 OK
lnmp环境搭建过程安装便是如此。