web集群学习:搭建 LNMP应用环境

目录

LNMP的介绍:

LNMP组合工作流程:

FastCGI介绍:

1、什么是 CGI

2、什么是 FastCGI

配置LNMP

1、部署LNMP环境

2、配置LNMP环境


LNMP的介绍:

随着 Nginx Web 服务的逐渐流行,又岀现了新的 Web 服务环境组合—LNMP或LEMP,其中 LNMP 为 Linux 、Nginx、MySQL、PHP 等首字母的缩写, 而 LEMP中的E则表示Nginx,它取 自 Nginx 名字的发音( engine X )。 现在,LNMP 已经逐渐成为国内大中型互联网公司网站的主流组合环境, 因此, 我们必须熟练掌握 LNMP环境的搭建、 优化及维护方法。

LNMP组合工作流程:

当 LNMP 组合工作时, 首先是用户通过浏览器输人域名请求 Nginx Web 服务,如果请求是静态资源, 则由 Nginx 解析返回给用户; 如果是动态请求( .php 结尾 ), 那么Nginx 就会把它通过 FastCGI 接口( 生产常用方法)发送给 PHP 引擎服务( FastCGI 进程php-fpm ) 进行解析, 如果这个动态请求要读 取数据库数据, 那么 PHP 就会继续向后请求 MySQL 数据库, 以读取需要的数据, 并最终通过 Nginx 服务把获取的数据返回给用户, 这就是 LNMP 环境的基本请求顺序流程 。

FastCGI介绍:

1、什么是 CGI

CGI 的全称为 “通用网关接口”( Common Gateway Interface ), 为 HTTP 服务器与其他机器上的程序服 务通信交流的一种工具, CGI 程序须运行在网络服务器上。传统 CGI 接口方式的主要缺点是性能较差, 因为每次 HTTP 服务器遇到动态程序时都需要重新启动解析器来执行解析, 之后结果才会被返回给 HTTP 服务器。 这在处理高并发访问时几乎是不可用的, 因此就诞生了 FastCGI。 另外, 传统的 CGI 接口方式安全性也很差, 故而现在已经很少被使用了。

2、什么是 FastCGI

FastCGI 是一个可伸缩地、 高速地在 HTTP 服务器和动态脚本语言间通信的接口( 在 Linux 下, FastCGI 接口即为 socket, 这个 socket 可以是文件 socket, 也 可 以 是 IP socket ), 主要优点是把动态语言和 HTTP 服务器分离开来。 多数流行的 HTTP 服务器都支持 FastCGI, 包括 Apache 、 Nginx 和 Lighttpd 等。

配置LNMP

1、部署LNMP环境

安装国内的epel:

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

部署LNMP环境:

yum install nginx mariadb-server php php-mysql php-gd php-fpm -y

2、配置LNMP环境

数据库:

mysql -e 'create database wordpress charset utf8'
mysql -e 'grant all on wordpress.* to wordpress@localhost identified by "123456"'

php-fqm:

server { listen       80; server_name  localhost; location / { root   /usr/share/nginx/html; index  index.html index.php index.htm; } location ~ \.php$ { root           /usr/share/nginx/html; fastcgi_pass   127.0.0.1:9000; fastcgi_index  index.php; #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include        fastcgi_params; } 

测试nginx和php协同:

[root@node1 conf.d]# echo "<?php phpinfo(); ?>" >/usr/share/nginx/html/test.php
[root@node1 conf.d]# systemctl restart nginx

浏览器访问:ip地址/test.php

 测试mysql和php协同:

下载好下载 WordPress 的压缩包文件:wordpress-4.8-zh_CN.tar.gz

解压到nginx默认的HTML测试页面

tar xf wordpress-4.8-zh_CN.tar.gz -C /usr/share/nginx/html/

启动环境:

systemctl restart nginx mariadb php-fpm

浏览器访问:ip地址/wordpress,并根据提示部署

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/40697.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Spring Cloud 八】Spring Cloud Gateway网关

gateway网关 系列博客背景一、什么是Spring Cloud Gateway二、为什么要使用Spring Cloud Gateway三、 Spring Cloud Gateway 三大核心概念4.1 Route&#xff08;路由&#xff09;4.2 Predicate&#xff08;断言&#xff09;4.3 Filter&#xff08;过滤&#xff09; 五、Spring …

如何使用Kali Linux进行密码破解?

今天我们探讨Kali Linux的应用&#xff0c;重点是如何使用它来进行密码破解。密码破解是渗透测试中常见的任务&#xff0c;Kali Linux为我们提供了强大的工具来帮助完成这项任务。 1. 密码破解简介 密码破解是一种渗透测试活动&#xff0c;旨在通过不同的方法和工具来破解密码…

力扣初级算法(数组拆分)

力扣初级算法&#xff08;数组拆分&#xff09; 每日一算法&#xff1a; 力扣初级算法&#xff08;数组拆分&#xff09; 学习内容&#xff1a; 1.问题描述 给定长度为 2n 的整数数组 nums &#xff0c;你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) …

机器人CPP编程基础-03变量类型Variables Types

机器人CPP编程基础-02变量Variables 全文AI生成。 C #include<iostream>using namespace std;main() {int a10,b35; // 4 bytescout<<"Value of a : "<<a<<" Address of a : "<<&a <<endl;cout<<"Val…

[Openwrt]一步一步搭建MT7981A uboot、atf、openwrt-21.02开发环境操作说明

安装ubuntu-18.04 软件安装包 ubuntu-18.04-desktop-amd64.iso 修改ubuntu管理员密码 sudo passwd [sudo] password for w1804: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 更新ubuntu源 备份源 sudo cp /etc/apt/so…

CentO7.9安装Docker

文章目录 CentO7.9安装Docker删除旧版本的Docker安装Docker仓库安装Docker安装最新版本安装指定版本 Docker安装个NGINX查看Docker镜像运行查看Docker进程查看启动端口停止Docker容器 CentO7.9安装Docker 删除旧版本的Docker sudo yum remove docker \docker-client \docker-…

Vue+ElementUI实现选择指定行导出Excel

这里记录一下&#xff0c;今天写项目时 的一个需求&#xff0c;就是通过复选框选中指定行然后导出表格中选中行的Excel表格 然后这里介绍一个工具箱(模板)&#xff1a;vue-element-admin 将它拉取后&#xff0c;运行就可以看到如下界面&#xff1a; 这里面的很多功能都已经实现…

【NAS群晖drive异地访问】使用cpolar远程访问内网Synology Drive「内网穿透」

文章目录 前言1.群晖Synology Drive套件的安装1.1 安装Synology Drive套件1.2 设置Synology Drive套件1.3 局域网内电脑测试和使用 2.使用cpolar远程访问内网Synology Drive2.1 Cpolar云端设置2.2 Cpolar本地设置2.3 测试和使用 3. 结语 前言 群晖作为专业的数据存储中心&…

jupyter切换conda虚拟环境

环境安装 conda install nb_conda 进入你想使用的虚拟环境&#xff1a; conda activate your_env_name 在你想使用的conda虚拟环境中&#xff1a; conda install -y jupyter 在虚拟环境中安装jupyter&#xff1a; conda install -y jupyter 重启jupyter 此时我们已经把该安装…

也许你正处于《孤注一掷》中的“团队”,要留心了

看完这部电影&#xff0c;心情久久不能平静&#xff0c;想了很多&#xff0c;倒不是担心自己哪天也成为“消失的yaozi”&#xff0c;而是在想&#xff0c;我们每天所赖以生存的工作&#xff0c;跟电影里他们的工作比&#xff0c;差别在哪里呢&#xff1f; 目录 1. 产品的本质…

Linux系统下的性能分析命令

在 Linux 系统下&#xff0c;有许多用于性能分析和调试的命令和工具&#xff0c;可以帮助您识别系统瓶颈、优化性能以及调查问题。本文将介绍在性能分析过程中&#xff0c;可能使用到的一些命令。 以下是一些常用的性能分析命令和工具汇总&#xff1a; 命令功能简述top用于实…

2023-08-16力扣每日一题

链接&#xff1a; 2682. 找出转圈游戏输家 题意&#xff1a; 环形1到n&#xff0c;从1开始&#xff0c;每次移动 第i次*k &#xff0c;当移动到出现过的序号时停下&#xff0c; 求没移动到的数字 解&#xff1a; 简单模拟题&#xff0c;我也以为有数学做法&#xff0c;可…

docker安装部署

目录 docker安装部署 1.环境 2.安装步骤 1.安装必要工具 2.配置软件源 3.修改软件源 4.更新并下载docker 5.设置开机自启 3.启动docker 1.配置docker镜像加速器 2.启动服务 docker安装部署 1.环境 centos7 2.安装步骤 1.安装必要工具 yum install -y yum-utils dev…

【QT+ffmpeg】QT+ffmpeg 环境搭建

1.qt下载地址 download.qt.io/archive/ 2. win10sdk 下载 https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/ 安装 debug工具路径 qtcreater会自动识别 调试器选择

最长连续序列

题目&#xff1a; 给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。 示例 1&#xff1a; 输入&#xff1a;nums [100,4,200,1,3,2] 输出&#xff1a;4 解释&#xff1a;最长数字连续序列是…

74、75、76——tomcat项目实战

tomcat项目实战 tomcat 依赖 java运行环境,必须要有jre , 选择 jdk1.8 JvmPertest 千万不能用 kyj易捷支付 项目机器 选择 一台机器 ,安装jdk1.8的机器下载tomcat的包 上传到机器,解压tomcattomcat文件 bin文件夹: 启动文件 堆栈配置文件 catalina.sh JAVA_OPTS="-Xm…

gitlab合并新项目和分支切换

一、新建项目 1、创建空白项目 2、先创建一个群组 3、编写群组信息 4、创建群组完成以后新建项目 ​​​​​​​ 二、将代码推送到gitlab 1、初始化 git init 2、关联gitlab地址 # 比如:http://192.168.139.128:7070/cloud/obwt_cloud.git git remote add origin <你…

FreeRTOS qemu mps2-an385 bsp 移植制作 :串口打印篇

相关文章 FreeRTOS qemu mps2-an385 bsp 移植制作 &#xff1a;环境搭建篇 FreeRTOS qemu mps2-an385 bsp 移植制作 &#xff1a;系统启动篇 FreeRTOS qemu mps2-an385 bsp 移植制作 &#xff1a;系统运行篇 开发环境 Win10 64位 VS Code&#xff0c;ssh 远程连接 ubuntu …

如何使用Python编写小游戏?

大家好&#xff0c;我是沐尘而生&#xff0c;如果你是一个热爱编程的小伙伴&#xff0c;又想尝试游戏开发&#xff0c;那么这篇文章一定能满足你的好奇心。不废话&#xff0c;让我们马上进入Python游戏开发的精彩世界吧&#xff01; Python游戏开发的魅力 编写小游戏不仅仅是锻…

BUUCTF [安洵杯 2019]easy_serialize_php 1 详细讲解

题目来自buuctf&#xff0c;这是一题关于php序列化逃逸的题 1. 题目 题目给出的代码 <?php$function $_GET[f];function filter($img){$filter_arr array(php,flag,php5,php4,fl1g);$filter /.implode(|,$filter_arr)./i;return preg_replace($filter,,$img); }if($_S…