美文网首页linux运维
lnmp(一)——lnmp介绍及mysql、php安装

lnmp(一)——lnmp介绍及mysql、php安装

作者: awsome365 | 来源:发表于2018-11-24 23:30 被阅读0次

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

    LNMP架构介绍

    LNMP和LAMP不同的是,Nginx提供web服务。并且php是作为一个独立服务存在的,进程名是php-fpm。Nginx直接处理静态请求,动态请求会转发给php-fpm。

    nginx的优势是处理静态元素访问请求,比apache快很多。

    mysql安装

    1. 进入下载目录cd /usr/local/src

    2. 下载mysql5.6版本二进制包wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz

    3. 解压tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

    4. 移动二进制包mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql

    5. 进入二进制包目录cd /usr/local/mysql

    6. 增加用户useradd mysql

    7. 创建数据目录mkdir /data/

    8. 安装依赖 perl-Module-Install libaio

    9. 初始化mysql ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

    10. 拷贝配置文件 cp support-files/my-default.cnf /etc/my.cnf

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

    最后就可以/etc/init.d/mysqld start启动mysql了。也可以用service mysqld start

    安装php

    和LAMP安装PHP方法有差别,需要开启php-fpm服务。lamp架构php编译为apache的一个模块,lnmp中php独立于nginx。两个架构相同点在于php都与mysql通信,所以编译时都要有相关参数。

    1. 进入下载目录cd /usr/local/src/
    2. 下载源码包wget http://cn2.php.net/distributions/php-5.6.30.tar.gz
    3. 解压tar zxf php-5.6.30.tar.gz
    4. 增加用户useradd -s /sbin/nologin php-fpm
    5. 进入解压目录cd php-5.6.30
    6. 安装依赖 libxml2-devel openssl-devel libcurl-devel libjpeg-turbo-devel libpng-devel freetype-devel libmcrypt-devel
    7. ./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
    8. make && make install
    9. 拷贝配置文件cp php.ini-production /usr/local/php-fpm/etc/php.ini
    10. 修改php-fpm配置文件vi /usr/local/php-fpm/etc/php-fpm.conf 写入如下内容
    [global]
    pid = /usr/local/php-fpm/var/run/php-fpm.pid
    error_log = /usr/local/php-fpm/var/log/php-fpm.log
    [www]
    listen = /tmp/php-fcgi.sock
    listen.mode = 666
    user = php-fpm
    group = php-fpm
    pm = dynamic
    pm.max_children = 50
    pm.start_servers = 20
    pm.min_spare_servers = 5
    pm.max_spare_servers = 35
    pm.max_requests = 500
    rlimit_files = 1024
    
    1. 配置启动脚本
    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。测试:ps aux |grep php-fpm。与apache类似,nginx也有语法测试功能:nginx -t。

    Nginx介绍

    Nginx官网 nginx.org,最新版1.15,最新稳定版1.14。nginx功能比较简单,但是可以扩展模块,比如https功能的支持。Nginx应用场景有web服务、反向代理、负载均衡等等。代理一台服务器是反向代理,多台服务器就是负载均衡。

    Nginx著名分支,淘宝基于Nginx开发的Tengine,使用上和Nginx一致,服务名,配置文件名都一样,和Nginx的最大区别在于Tenging增加了一些定制化模块,在安全限速方面表现突出,另外它支持对js,css合并。

    Nginx核心+lua相关的组件和模块组成了一个支持lua的高性能web容器openresty,参考http://jinnianshilongnian.iteye.com/blog/2280928

    相关文章

      网友评论

        本文标题:lnmp(一)——lnmp介绍及mysql、php安装

        本文链接:https://www.haomeiwen.com/subject/jusuqqtx.html