网站服务架构部署(LNMP)

1. LNMP架构说明
LNMT: linux nginx mysql tomcat
LNMP: linux nginx mysql php/python 
LAMP: linux apache mysql php
作用: 可以使用架构处理动态访问请求
2. LNMP架构部署过程
  • Linux :
    1) 系统安全服务需要关闭 selinux iptables
    2) 确认系统/tmp目录权限 1777
  • nginx :
    1) 安装yum官方源nginx程序
    mysql/mariadb:
    1) 安装部署maraidb
    # 下载安装数据库程序软件
    yum install mariadb-server mariadb -y
    # 启动数据库程序服务进程
    systemctl start mariadb.service
    systemctl enable mariadb.service

    启动服务异常: 无法启动服务
    原因: 服务配置文件不正确
    cp /usr/share/mysql/my-small.cnf /etc/my.cnf

数据库特殊的管理命令: SQL语句(库 – 表 – 列/行(字段-数据信息))
show databases; — 查看所有数据库信息
use 数据库名称; — 切换数据库
show tables; — 查看库中所有表信息
select * from user;-– 查看表中的数据信息
数据库服务设置登录密码信息
mysqladmin -uroot password "oldboy123"— 设置密码或者修改密码
mysql -uroot -poldboy123

  • php: 解析动态请求的服务
    PHP官方网站: http://php.net/
    # 解决yum安装软件冲突问题
    yum remove php-mysql php php-fpm php-common
    # 准备yum安装软件扩展源信息
    rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
    # 利用yum安装PHP相关软件信息
    yum install -y php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-pecl-mongodb
    # 修改php服务进程管理用户信息(建议修改的用户和nginx worker进程用户一致)
    vim /etc/php-fpm.d/www.conf
    8 user = www
    10 group = www
    # 启动运行php-fpm程序
    systemctl restart php-fpm
3. LNMP架构工作原理

1,用户通过http协议发起请求,请求先会抵达LNMP架构中的nginx
2.nginx会根据用户的请求进行判断,这个判断由location进行完成
3.如果是静态页面,nginx直接进行处理
4.如果是动态页面,nginx会将请求交给fastcgi协议下发
5.fastcgi会将请求交给php-fpm管理进程,php-fpm管理进程调用具体的线程warrap
6.warrap进程会调用php程序进行解析,如果只是解析代码php直接返回
7.如果有查询数据库操作,则由php连接数据库(用户 IP 密码)发起查询的操作
8.最终数据由mysql > php >php-fpm >fastcgi >nginx >http >user

在这里插入图片描述

4. LNMP架构配置过程
  • 第一个历程: 建立nginx–php通讯过程
1) 编写nginx配置
server {
  listen        80;
  server_name   blog.oldboy.com;
  location / {
      root         /html/blog;
      index        index.php index.html;
  }
  location ~ \.php$ {
      root /html/blog;
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
  }
}

2) 进行动态访问测试
vim test_phpinfo.php
<?php
  phpinfo();
?>
  • 第二个历程: php + mariadb建立联系 编写代码信息
vim test_mysql.php
<?php
 $servername = "localhost";
 $username = "root";
 $password = "oldboy123";
 //$link_id=mysql_connect('主机名','用户','密码');
 //mysql -u用户 -p密码 -h 主机
 $conn = mysqli_connect($servername, $username, $password);
 if ($conn) {
       echo "mysql successful by root !\n";
    }else{
       die("Connection failed: " . mysqli_connect_error());
    }
?>
5. 部署搭建动态网站页面
  • 第一个历程: 下载获取动态网站代码信息
博客网站开源代码: wordpress   --- blog.oldboy.com 
代码下载地址: https://cn.wordpress.org/download/
论坛网站开源代码: discuz      --- bbs.oldboy.com
代码下载地址: https://www.discuz.net/thread-3796882-1-1.html
官方网站开源代码: dedecms/phpcms   --- www.oldboy.com
phpcms   http://www.phpcms.cn/html/download/phpcms/#content
dedecms 
知乎网站开源代码: wecenter    --- zhihu.oldboy.com	
  • 第二个历程: 将代码信息进行上传/修改代码文件权限
chown -R www.www /html/blog/
  • 第三个历程: 进行网站页面初始化/和网站数据库服务建立连接
创建数据库信息:
create database wordpress;

创建管理数据库用户信息:
grant all on wordpress.* to 'wordpress'@'localhost'  identified by 'oldboy123';
select user,host from mysql.user;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值