码迷,mamicode.com
首页 > 系统相关 > 详细

linux LNMP环境搭建

时间:2016-05-03 00:43:27      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:linux服务器   lnmp   

系统版本:CentOS 6.5   软件版本:libmcrypt-2.5.8   mysql-5.6.26   nginx-1.8.0   pcre-8.37  php-5.6.13


LNMP平台组成:Linux、Nginx、MySQl、PHP

Nginx是一款高性能、轻量级的Web服务软件,具有稳定性高、系统资源消耗低、对HTTP并发连接的处理能力高等特点


一、Nginx编译安装

准备工作,解决依赖,安装相关工具包并且创建Nginx程序用户

[root@host1 ~]# yum -y install gcc gcc-c++ autoconf automake

[root@host1 ~]# yum -y install zlib zlib-devel openssl openssl-devel

[root@host1 ~]# useradd nginx -M -s /sbin/nologin


1.解包,将所需软件解压到/usr/src/目录下

技术分享


2.配置编译安装

技术分享

技术分享

说明:模块的支持需要考虑真实环境,这里只是列举一些

--prefix  ##指定安装位置

--user    ##指定程序用户

--group   ##指定程序组

--with-http_stub_status_module   ##启用支持状态统计模块

--with-http_dav_module    ##启用支持(增加PUT,DELETE,MKCOL:创建集合,COPY和MOVE方法)默认情况下为关闭,需编译开启

--with-http_addition_module   ##启用支持(作为一个输出过滤器,支持不完全缓冲,分部分相应请求)

--with-http_sub_module  ##启用支持(允许一些其他文本替换Nginx相应中的一些文本)

--with-http_flv_module  ##启用支持(提供支持flv视频文件支持)

--with-http_mp4_module  ##启用支持(提供支持mp4视频文件支持,提供伪流媒体服务端支持)

--with-pcre=/usr/local/src/pcre-8.37   ##需要注意,这里指定的是源码包解压路径,pcre与nginx一起编译安装


3.配置调整

Nginx的相关目录

[root@host1 ~]# ll /usr/local/nginx/
总用量 16
drwxr-xr-x. 2 root root 4096 4月   5 06:46 conf      ##Nginx相关配置文件

drwxr-xr-x. 2 root root 4096 4月   5 06:46 html      ##网站根目录

drwxr-xr-x. 2 root root 4096 4月   5 06:46 logs      ##日志文件

drwxr-xr-x. 2 root root 4096 4月   5 06:46 sbin      ##Nginx启动脚本


为主程序nginx创建链接文件

技术分享


编写Nginx服务脚本

技术分享

技术分享


给创建好的服务脚本执行权限,并添加为系统服务

技术分享


配置nginx支持PHP文件,修改主配置文件

技术分享

技术分享


4.启动Nginx,配置防火墙

技术分享


5.查看nginx测试页

技术分享


二、编译安装MySQL

准备工作,解决依赖,安装相关软件包并创建MySQL程序用户

技术分享技术分享


1.解包,配置,编译,安装

技术分享

技术分享


2.配置MySQL

设置目录及文件的属主和属组

技术分享

覆盖原配置文件

技术分享

创建服务启动脚本,并在启动脚本中指定MySQL位置

技术分享

技术分享

技术分享

初始化数据库

技术分享

设置环境变量

技术分享


3.启动MySQL,设置防火墙技术分享


4.设置mysql管理员密码,测试登录

技术分享

技术分享


三、编译安装PHP

准备工作,解决依赖,安装相关软件包

技术分享

1.添加libmcrypt加密算法库拓展

技术分享

由于系统默认只在/lib、/lib64、/lib/lib64下找库文件,所以需要将此库路径和MySQL库路径添加到/etc/ld.so.conf中,然后加载库文件,并配置为开启启动

技术分享


2.编译安装PHP

技术分享

说明:

--with-config-file-path     ##设置 php.ini 的搜索路径。默认为 PREFIX/lib

--with-mysql     ##mysql安装目录,对mysql的支持

--with-mysqli     ##mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。是一个数据库驱动

--with-iconv-dir     ##种字符集间的转换

--with-freetype-dir     ##打开对freetype字体库的支持

--with-jpeg-dir     ##打开对jpeg图片的支持

--with-png-dir     ##打开对png图片的支持

--with-zlib     ##打开zlib库的支持,实现GZIP压缩输出      

--with-libxml-dir=/usr     ##打开libxml2库的支持,libxml是一个用来解析XML文档的函数库

--enable-xml     ##支持xml文档

--disable-rpath     ##关闭额外的运行库文件

--enable-bcmath     ##打开图片大小调整,用到zabbix监控的时候用到了这个模块

--enable-shmop     ##shmop共享内存操作函数,可以与c/c++通讯

--enable-sysvsem     ##加上上面shmop,这样就使得你的PHP系统可以处理相关的IPC函数(活动在内核级别)。

--enable-inline-optimization     ##优化线程

--with-curl     ##打开curl浏览工具的支持  

--with-curlwrappers     ##运用curl工具打开url流 ,新版PHP5.6已弃用

--enable-mbregex     ##支持多字节正则表达式

--enable-fpm     ##CGI方式安装的启动程序,PHP-FPM服务

--enable-mbstring     ##多字节,字符串的支持

--with-gd     ##打开gd库的支持,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。

--enable-gd-native-ttf     ##支持TrueType字符串函数库

--with-openssl     ##打开ssl支持

--with-mhash     ##支持mhash算法扩展

--enable-pcntl     ##freeTDS需要用到的,pcntl扩展可以支持php的多线程操作

--enable-sockets     ##打开 sockets 支持

--with-xmlrpc     ##打开xml-rpc的c语言

--enable-zip     ##打开对zip的支持

--enable-soap     ##扩展库通过soap协议实现了客服端与服务器端的数据交互操作

--with-mcrypt     ##mcrypt算法扩展

编译安装

技术分享


3.安装后调整

创建PHP配置文件

技术分享

创建php-fpm配置文件及其启动脚本

技术分享


4.启动php-fpm,如果nginx和php分别部署在两台主机上,要注意修改php-fpm.conf配置文件的监听地址及其注意防火墙

技术分享


5.编写一个连接数据库的动态php网页,然后使用浏览器访问下看看是否可以连接

技术分享

技术分享


技术分享


到此为止,LNMP环境就搭建好了,生产环境下,一般都是nginx、mysql和php分别部署在不同的主机上,需要注意的是不同主机监听的地址及其对应的防火墙规则

linux LNMP环境搭建

标签:linux服务器   lnmp   

原文地址:http://928004321.blog.51cto.com/10707688/1769504

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!