动态网站架构和动态网站部署和 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部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

Nginx实现动态封禁IP的步骤指南

《Nginx实现动态封禁IP的步骤指南》在日常的生产环境中,网站可能会遭遇恶意请求、DDoS攻击或其他有害的访问行为,为了应对这些情况,动态封禁IP是一项十分重要的安全策略,本篇博客将介绍如何通过NG... 目录1、简述2、实现方式3、使用 fail2ban 动态封禁3.1 安装 fail2ban3.2 配

Vue3中的动态组件详解

《Vue3中的动态组件详解》本文介绍了Vue3中的动态组件,通过`component:is=动态组件名或组件对象/component`来实现根据条件动态渲染不同的组件,此外,还提到了使用`markRa... 目录vue3动态组件动态组件的基本使用第一种写法第二种写法性能优化解决方法总结Vue3动态组件动态

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应