您的位置:首页 > 其它

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源码包进行拆解:





进入拆解目录:为方便应用可以创建一个连接,则就可以直接通过连接进入 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环境搭建过程安装便是如此。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: