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

linux下LNMP环境的搭建

时间:2016-06-12 18:56:04      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:linux   二进制   local   mysql   

lamp=linux+apache+mysql+php; lnmp=Linux+nginx+mysql+php 他们的区别在于apache和nginx和php结合的模式不同,我们讲的这两个架构中,php在编译的时候以一个模块的形式和apache成为了一个整体,这种情况下我们是可以把php的安装目录/usr/local/php删除的。而lnmp中的php启动了一个服务php-fpm,这种模式相当于nginx处理php脚本时,直接把请求转发给了php-fpm,说白了就是一个代理。这个php的安装目录是不可以删除的。 这两种模式其实是可以共存的,编译配置的时候,把prefix=后面的目录改一下即可,不让它覆盖。


1.Mysql的安装(5.6会依懒包 所以安装过程会得安装依懒包)

mysql5.6.29tar.gz包 本次采用源码编译(不过工作中不建议用源码编译,太浪费时间,还是采用二进制源码包安装比较好)

先下载包然后把包拷贝到 /usr/local/src

然后解包

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \(安装路径)

-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \(socket文件)

-DDEFAULT_CHARSET=utf8 \ (默认字符集)

-DDEFAULT_COLLATION=utf8_general_ci \(默认编码)

-DWITH_EXTRA_CHARSETS=utf8,gbk \(额外的编码)

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \(启用PERFSCHEMA引擎支持

-DWITH_FEDERATED_STOGAGE_ENGINE=1 \(启动FEDERATE引擎支持

-DWITH_PARTITION_STORAGE_ENGINE=1 \(启动PARTITION引擎支持

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \(启动ARCHIVE引擎支持

-DWITH_READLINE=1 \(使用readline功能)

-DMYSQL_DATADIR=/usr/local/mysql/data \(数据库数据目录)

-DMYSQL_TCP_PORT=3306(TCP/IP 端口)

useradd -s /sbin/nologin -M mysql

mkdi -p /data/mysql

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql (datadir 存放数据)

5.mysql的配置文件在(/etc/my.cnf)

cd support-files/

cp my-large.cnf /etc/my.conf

vi my.conf

【mysqld】用来配置mysql服务的

log-bin=mysql-bin(更新数据会有相应的记录日志)--.>主从有用

cp mysql.sever /etc/init.d/mysqld

vi /etc/init.d/mysqld

找到

basedir=/usr/local/mysql

datadir=/data/mysql

chkconfig -add mysqld (加入系统服务列表)

chkconfig mysqld on(开机启动)

/etc/init.d/mysqld start

ps -aux |grep mysql

netstart -lnp|grep mysql 

安装PHP(5.5.29)

cd php-5.5.29

创建相关用户
useradd -s /sbin/nologin php-fpm

配置编译参数

./configure --prefix=/usr/local/php   --with-config-file-path=/usr/local/php/etc  --enable-fpm  --with-fpm-user=php-fpm  --with-fpm-group=php-fpm  --with-mysql=/usr/local/mysql  --with-mysql-sock=/tmp/mysql.sock  --with-libxml-dir  --with-gd  --with-jpeg-dir  --with-png-dir  --with-freetype-dir  --with-iconv-dir  --with-zlib-dir  --with-mcrypt

--enable-soap  --enable-gd-native-ttf  --enable-ftp  --enable-mbstring  --enable-exif  --disable-ipv6

make &make install

cp php.ini-production /usr/local/php/etc/php.ini (拷贝配置文件)

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm(拷贝启动脚本文件)

chmod 755 ./etc/init.d/php-fpm (添加X的权限)

chkconfig --add php-fpm (开机启动)

启动的配置文件php-fpm.conf 

cd /usr/local/php/etc/ 

mv php-fpm.default php-fpm.conf

检查是否错误:/usr/local/php/sbin/php -fpm -t

php.ini 是php的全局配置文件,比如我要配置时区,配置禁止函数。
php-fpm.conf 是php-fpm 专属的配置文件,比如配置运行服务的用户,配置启动参数等,咱们视频都有讲。
php-fpm 就是一个启动二进制文件。




Nginx安装

cd /usr/local/src 

wget http://mirrors.sohu.com/nginx/nginx-1.9.9.tar.gz

tar xvf nginx-1.9.9.tar.gz

cd nginx-1.9.9

./configure \

--prefix=/usr/local/nginx \
--with-pcre(正则库)
安装过程出错:需要安装一个pcre-devel (devel代表是开发需要的包,一般缺啥包都是要devel)
make & make install
echo $? (结果是0代表没有出错)
cd /usr/local/nginx 生成4个目录
iptables -F(暂时清空防火墙)
/usr/local/nginx/sbin/nginx (回车启动)
在浏览器用IP访问 可以发现:

技术分享


LNMP搭建成功!!!
然后要做配置,让PHP能够解析.
vim /usr/local/nginx/conf/nginx.conf (默认配置文件)

打开PHP功能并修改

/usr/local/nginx/sbin/nginx -s reload(重新加载)

技术分享

然后将ROOT拿出来做全局设置

技术分享

然后cd /usr/local/nginx/html

vi 2.php 

<?php

echo “测试是否解析”

?>

技术分享

说明LNMP 可以解析PHP, PHP可以在LNMP环境下跑起来了

linux下LNMP环境的搭建

标签:linux   二进制   local   mysql   

原文地址:http://10424819.blog.51cto.com/10414819/1788291

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