博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LNMP架构介绍
阅读量:6894 次
发布时间:2019-06-27

本文共 4763 字,大约阅读时间需要 15 分钟。

LNMP架构

LNMP架构介绍
1)使前端web服务和后端存储服务进行串联2)主要实现处理PHP程序动态请求
LNMP的工作原理
LNMP:    L:表示linux     N:表示Nginx     M:表示mysql     P:表示PHP工作原理:前端接收用户的请求,到达nginx后,nginx服务会先判断用户的请求是否可以处理,如果可以处理的先自己处理,如果处理不了的,nginx服务先通过fastcgi_pass指令与通过fastcgi接口将处理不了的请求抛送给PHP服务,php会通过php-fpm进程来接收到nginx抛送过来的请求,同时php服务会通过wrapper进程来识别这个请求,然后会交给php的解析器来进行识别,php解析器识别后会调取数据库资源,让数据库识别用户的请求,最终将要调取的数据识别出来,返还给php进程wrapper,再返还给php进程php-fpm,再返回给fastgci接口交给nginx客户端,nginx客户端接收到这个请求的结果响应给用户

LNMP架构部署

第一步:安装LNMP架构相关软件

1.部署linux系统
部署完成后,需要进行基础优化(防火墙关闭,selinux关闭,/tmp目录权限为1777)
2.部署nginx服务
安装过程详解:http://1a7f2dd7.wiz03.com/share/s/0qvOTn10-AEH29_zxM18oPGG1QICGl14RkIx2GujYl2NuYca
3.部署mysql服务
第一个里程:下载mysql软件mysql官方下载链接地址:ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz[root@web01 tools]# tar xf mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz[root@web01 tools]# mv mysql-5.6.41-linux-glibc2.12-x86_64 /application/mysql-5.6第二个里程:创建软链接[root@web01 mysql-5.6]# ln -s /application/mysql-5.6/ /application/mysql第三个里程:创建数据库管理用户,并进行授权数据目录[root@web01 mysql]# useradd -M -s /sbin/nologin mysql[root@web01 mysql]# chown -R mysql. /application/mysql/data/第四个里程:对数据库进行初始化[root@web01 mysql]# scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data/ --user=mysql第五个里程:启动mysql服务[root@web01 mysql]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld#将默认位的mysql位置改成现在安装的位置[root@web01 mysql]# sed -ri "s#/usr/local#/application#g" /etc/init.d/mysqld /application/mysql/bin/mysqld_safe#因版本不同,需要现在的配置文件覆盖系统原来的配置文件[root@web01 mysql]# cp /application/mysql/support-files/my-default.cnf /etc/my.cnf cp: overwrite `/etc/my.cnf'? y[root@web01 mysql]# /etc/init.d/mysqld start第六个里程:设置mysql密码[root@web01 ~]# /application/mysql/bin/mysqladmin -uroot password "oldboy"[root@web01 ~]# /application/mysql/bin/mysql -uroot -poldboy

第二步:部署PHP环境

第一个里程:安装PHP软件依赖关系[root@web01 tools]# yum install -y zlib-devel libxml2-devel libjpeg-devel libjpeg-t urbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devellibiconv软件安装---字符集转换库(默认可以不进行安装了)cd /server/tools #wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz tar zxf libiconv-1.14.tar.gz cd libiconv-1.14 ./configure --prefix=/usr/local/libiconv  make && make install  #wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo   yum -y install libmcrypt-devel mhash mcrypt   rpm -qa libmcrypt-devel mhash mcrypt   第二个里程:安装PHP软件   php官方网站下载:php.net   本地不安装mysql, 将--with-mysqli=mysqlnd设为mysqlnd即可[root@web01 sbin]# ./configure   \--prefix=/application/php-5.5.32  \--with-mysqli=mysqlnd  \ --with-pdo-mysql=mysqlnd   \--with-iconv-dir=/usr/local/libiconv  \--with-freetype-dir --with-jpeg-dir \--with-png-dir  \--with-zlib \--with-libxml-dir=/usr \--enable-xml \--disable-rpath \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-inline-optimization \--with-curl \--enable-mbregex \--enable-fpm \--enable-mbstring \--with-mcrypt \--with-gd \--enable-gd-native-ttf \--with-openssl \--with-mhash \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-soap \--enable-short-tags \--enable-static \--with-xsl \--with-fpm-user=www \--with-fpm-group=www \--enable-ftp \--enable-opcache=no##防错(以下信息可以不进行配置了)ln -s /application/mysql/lib/libmysqlclient.so.18  /usr/lib64/touch ext/phar/phar.pharmake && make installln -s /application/php-5.5.32/ /application/php第三个里程:设置PHP程序配置文件cp php.ini-production /application/php-5.5.32/lib/    cd /application/php/etc/    cp php-fpm.conf.default php-fpm.conf第四个里程:启动PHP服务/application/php/sbin/php-fpmnetstat -lntup|grep php    tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      6251/php-fpm

第三部:进行软件直接的结合,nginx与php结合

1.编写nginx配置文件
[root@web01 blog]# cat ../../conf/extra/blog.conf server {        listen       80;         server_name  blog.etiantian.org;        root   html/blog;        index  index.php index.html index.htm;    location ~* .*\.(php|php5)?$ {      fastcgi_pass 127.0.0.1:9000;          fastcgi_index index.php;          include fastcgi.conf;        }        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   html;        }        }[root@web01 blog]#
2.编辑php页面
[root@web01 blog]# cat test_info.php
3.测试访问

部署一个真实的网站

第一个里程:上传和下载网站代码第二个里程:解压代码程序,将代码和序保存到站点目录并进行授权cd /server/toolstar xf wordpress-4.7.3-zh_CN.tar.gz  mv wordpress/* /application/nginx/html/blog/chown -R www.www /application/nginx/html/blog/第三个里程:直接访问blog网站,进行初始化操作创建数据库:create database wordpress;show databases;创建连接数据用户信息grant all on wordpress.* to 'wordpress'@'localhost' identified by 'oldboy123';select user,host from mysql.user;

转载于:https://www.cnblogs.com/yjiu1990/p/10508659.html

你可能感兴趣的文章
Jquery学习笔记-表单元素选择器
查看>>
分布式监控系统Ganglia简介及安装
查看>>
mysql1
查看>>
【MongoDB系列】简介、安装、基本操作命令
查看>>
面向对象分析笔记
查看>>
在OEL6.1下安装ORACLE 11G R2
查看>>
windows平台下gvim的一些配置
查看>>
DPM 2010 Error Code Catalog
查看>>
SAP打开界面黑色问题处理方法
查看>>
ubuntu 安装mysql
查看>>
SQL查询下级节点
查看>>
编码的原理讲解
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
主机屋使用感受
查看>>
卫星大锅上网链接调试
查看>>
我的友情链接
查看>>
Lync Server 2013企业版部署系列之二:准备DNS
查看>>
实战免费公网证书申请
查看>>
TCP/IP建立连接(三次握手)和关闭连接(四次挥手)
查看>>