动态网站架构和动态网站部署和 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

相关文章

通过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)一切正常,但部署到

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

go动态限制并发数量的实现示例

《go动态限制并发数量的实现示例》本文主要介绍了Go并发控制方法,通过带缓冲通道和第三方库实现并发数量限制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录带有缓冲大小的通道使用第三方库其他控制并发的方法因为go从语言层面支持并发,所以面试百分百会问到

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server