动态网站架构和动态网站部署和 fastcgiphp-fpm

2024-04-01 20:18

本文主要是介绍动态网站架构和动态网站部署和 fastcgiphp-fpm,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

动态网站架构:

index.php :这种文件是Linux Nginx Mysql PHP 环境下的文件
index.py :这是Linux Nginx Mysql python 环境下的文件
index.jsp :这是Linux JDK Oracle Tomcat 环境下的文件 商业性Java
index.asp :Windows+iis+asp.net+sql-server/oracle/mogodb

动态网站的部署

一、部署网站环境
下载环境软件

yum -y nginx php-mysql php-fpm php-gd
systemctl start nginx php-fpm
systemctl enable nginx php-fpm

下载好之后,启动nginx-fastcgi 功能
在配置文件中把注释去掉就可以了
在这里插入图片描述

测试一下php-fpm是否启动成功,能否正常使用,
在这里插入图片描述
出现这样的页面表明php-fpm启动成功,能够使用。
下一步安装mysql

yum -y install mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb

插入一些数据,测试mariadb
mysqladmin password ‘123456’ 给数据库配上密码
进入数据库
mysql -uroot -p123456
create database bbs; 创建库
grant all on bbs.* to phptest@‘192.168.122.%’ identified by ‘123456’; 授权用户
flush privileges; 刷新数据库
在这里插入图片描述
在这里插入图片描述
测试成功,下面我们做一些动态的网站
vim 2.html
在这里插入图片描述
vim insert.php
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.Nginx+FastCGI运行原理
nginx 通过ngx_fastcgi_modul模块 链接 php-fpm处理动态请求。
3.LNMP的运行原理
首先,浏览器发送http request 请求到服务器(nginx),服务器响应并处理请求,将一些静态的资源(css 图片, 视频)保存服务器上,然后将php脚本通过接口传输协议php-fcg传输给php-fpm(进程管理器),php-fpm不做处理,php-fpm调用php解析器进程,php解析器解析php脚本信息,php解析器可以启动多个进程,然后将解析后的脚本返回到php-fpm,php-fpm在通过fastcgi的形式将脚本信息传给nginx,服务器在通过http reponse 的形式传给浏览器,浏览器在进行解析与渲染后进行呈现。
4、LAMP的工作原理
LAMP其实是指Linux+Apache+Mysql+PHP的结构体系。其工作原理如下:
浏览器向服务器发送http请求,服务器接收请求,由于php作为Apache的组件模块也会一起启动,他们具有相同的生命周期,Apache会将一些静态资源保存,然后去调用oho处理模块惊醒php脚本处理,脚本处理完之后,Apache将处理完的信息通过http reponse的方式发送给浏览器,浏览器解析,渲染等一系列操作后呈现整个网页。
两个的区别:
在LNMP中,Nginx本身对脚本不做任何的处理,而是去调用一个PHP-FPM的进程,二者是相互独立的。
在LAMP中,PHP是Apache的一个模块,具有相同的生命周期。

php-fpm的初始配置

pm = dynamic
pm.start_servers = 32
pm.max_children = 512

pm.min_spare_servers = 32
pm.max_spare_servers = 64
pm.max_requests = 1500
在这里插入图片描述

location的正则表达:
=是精确匹配优先级最高
~像是    并且区分大小写 优先级比=要低
~*   是不区分大小写 优先级比=要低
/  是优先级最低的

这篇关于动态网站架构和动态网站部署和 fastcgiphp-fpm的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/868055

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Spring Gateway动态路由实现方案

《SpringGateway动态路由实现方案》本文主要介绍了SpringGateway动态路由实现方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前沿何为路由RouteDefinitionRouteLocator工作流程动态路由实现尾巴前沿S

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

Python动态处理文件编码的完整指南

《Python动态处理文件编码的完整指南》在Python文件处理的高级应用中,我们经常会遇到需要动态处理文件编码的场景,本文将深入探讨Python中动态处理文件编码的技术,有需要的小伙伴可以了解下... 目录引言一、理解python的文件编码体系1.1 Python的IO层次结构1.2 编码问题的常见场景二

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到