11月23日任务

12.1 LNMP架构介绍
12.2 MySQL安装
12.3/12.4 PHP安装
12.5 Nginx介绍

一.LNMP架构介绍

LNMP架构介绍-LMLPHP

  • PHP作为一个独立服务存在,这个服务叫php-fpm
  • Nginx直接处理静态请求,用户的动态请求会转发给php-fpm去处理,完成后返回给Nginx,再返回给用户浏览器
  • Nginx介绍:http://jinnianshilongnian.iteye.com/blog/2280928 

二.MySQL安装

LNMP架构介绍-LMLPHP

示例一:

  • cd /usr/local/src  进入到该目录下
  • wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz  下载包
  • tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz   解压包
  •  mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql  移动并改名
  • cd /usr/local/mysql  进入目录下
  • useradd mysql  创建用户
  • mkdir /data/  创建目录
  • ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql  编译
  • cp support-files/my-default.cnf  /etc/my.cnf  拷贝配置文件
  • vi /etc/my.cnf 编辑配置文件

LNMP架构介绍-LMLPHP

  • cp support-files/mysql.server /etc/init.d/mysqld 拷贝启动脚本
  •  vi /etc/init.d/mysqld 编辑启动脚本
  • 定义basedir和datadir  

LNMP架构介绍-LMLPHP

  • /etc/init.d/mysqld start
  • 检查mysql是否启动,和设置为开机启动

LNMP架构介绍-LMLPHP

  • chkconfig --add mysqld 加入服务列表里面去
  • chkconfig mysqld on 让他开机启动
  • 重新启动一下
  • service mysqld stop  关闭
  • service mysqld start  启动

三.PHP安装

LNMP架构介绍-LMLPHP

LNMP架构介绍-LMLPHP

示例一:

  • 和LAMP安装PHP方法有差别,需要开启php-fpm服务  
  • cd /usr/local/src/   进入目录下
  • wget http://cn2.php.net/distributions/php-5.6.30.tar.gz  下载php二进制安装包
  • tar zxf php-5.6.30.tar.gz  解压包
  • useradd -s /sbin/nologin php-fpm  创建用户
  • cd php-5.6.30  进入目录下
  • ./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-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 --with-pear --with-curl  --with-openssl
  • yum install gcc
  • yum install -y libxml2-devel
  • yum install -y openssl-devel
  • yum install libcurl-devel
  • yum install -y libjpeg-devel
  • yum install -y libpng-devel
  • yum install -y libmcrypt-devel
  • https://blog.csdn.net/u012208775/article/details/78784616 该网址是安装第三方yum源案例,如果发现有些包安装不了,可以安装一下第三方yum源,再次安装。
  • 缺少该包就安装一下,然后接着编译
  • make && make install  
  • cp php.ini-production /usr/local/php-fpm/etc/php.ini 拷贝一份配置文件 ,这个是线上用的模板
  • cd /usr/local/php-fpm/etc/ 进入该目录下
  • vi /usr/local/php/etc/php-fpm.conf //编辑配置文件,写入如下内容(参考)
  • https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D15Z/php-fpm.conf) 去该网址下,拷贝

LNMP架构介绍-LMLPHP

  • cd /usr/local/src/php-5.6.30 进入到源码包目录下
  • cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm   拷贝一份启动脚本
  •  chmod 755 /etc/init.d/php-fpm  给权限
  • chkconfig --add php-fpm  加入服务列表
  • chkconfig php-fpm on  开启开机启动
  • service php-fpm start  启动php-fpm
  • ps aux |grep php-fpm 查看一下是否运行

LNMP架构介绍-LMLPHP

  • ll /tmp/php-fcgi.sock 看自定义配置的权限是否对的上666

LNMP架构介绍-LMLPHP

四.Nginx介绍

LNMP架构介绍-LMLPHP

  • 官网是aginx.org 是俄罗斯人开发的
  • Nginx静态处理能力比Apache强

LNMP架构介绍-LMLPHP

  • 代理一台叫反向代理
  • 代理两台叫负载均衡
  • 淘宝开发的tenging,在安全限速方面变现突出,并且支持合并js,css合并,使用起来跟Nginx基本一样的。
  • Nginx核心+lua相关的组件和模块组成了一个支持lua的高性能web容器openresty 参考:http://http://jinnianshilongnian.iteye.com/blog/2280928
11-26 12:45