项目上线部署--》网站运行机制

网站运行机制

🌟名词解释

域名

DNS 服务器

服务器

🌟 网站请求流程

静态页面

动态页面

前后端分离的页面

前后端不分离的页面

 🌟写在最后


🌟名词解释

域名

  • www.baidu.com
  • www.taobao.com
  • www.qq.com

域名俗称网址,是由一串用点分隔的名字组成,用于标识互联网上的计算机。

原本用于标识互联网上计算机使用的是 IP 地址,但是由于 IP 地址不便于记忆,所以人们便设计出来比较容易记忆的域名,然后通过 DNS 将域名和 IP 地址关联,这样人们便可以通过记忆域名直接访问到对应的计算机。

DNS 服务器

DNS (Domain Name System),可以理解为互联网上的一项服务,他可以将域名转换成其对应的 IP 地址。

可以将其理解为字典,字典中存储的就是域名和 IP 地址一一对应的键值对。

在浏览器输入网址后,先会去看本地hosts文件中有无对应关系,文件位置如下:

windows: c:\windows\system32\drivers\etc\hosts

mac: /etc/hosts

比如在我的本地hosts中就存在:

127.0.0.1       localhost

服务器

服务器其实就是一台计算机,但是这台计算机并和我们自己的的 PC 不一样,不是日常使用的,而是提供某项互联网服务的。

比如 web 服务器,能为我们提供网页服务,email 服务器,能为我们提供电子邮件服务,FTP 服务器能为我们提供文件存储服务等等。

为计算机安装不同的服务应用程序,即可提供相应的服务。

常见的web 服务应用程序: Apache、Nginx、IIS、Node.js

 

🌟 网站请求流程

静态页面

网页只请求和响应简单的 HTML、CSS、JavaScript 文件,未和服务端进行任何数据通信。这样的页面叫做静态页面。

动态页面

页面内有和服务器进行数据通信,这样的页面叫做动态页面。

前后端分离的页面

前后端分离的项目中,页面中的数据渲染是在浏览器中完成的。

前后端分离的页面请求分为两部分: 静态页面请求 + ajax 数据请求

上面这张图展现的是静态页面:

1.当在浏览器输入网址时,浏览器像DNS服务器发出请求,获取当前域名所对应的唯一IP。

2.DNS服务器返回给浏览器。

3~4.浏览器向服务器请求,此时Nginx监听到请求,就去拿到我们上传到服务器的资源入口文件。

5~6.将资源返回浏览器,浏览器将HTML渲染至页面。

 

上面这张图展现的是动态页面:

1.当在浏览器输入网址时,浏览器像DNS服务器发出请求,获取当前域名所对应的唯一IP。

2.DNS服务器返回给浏览器。

3~4.浏览器向服务器请求,此时表示的是如ajax请求,通过配置Nginx反向代理避免跨域。

5~6.获取数据并处理。

7~8.将资源返回浏览器,浏览器将HTML渲染至页面。

其实当页面发起ajax请求时,是可以通过与Nginx不同的端口直接访问到node服务,但此时就形成了跨域,可以使用JSONP或者CORS等解决,不过目前主流是通过配置Nginx反向代理解决跨域。

前后端不分离的页面

前后端不分离的项目中,页面中的数据渲染操作是在服务器端完成的。

前后端不分离的页面一次请求就能完成。

 

 🌟写在最后

项目上线部署--》将详细讲解关于网站运行机制、基础知识及网站上线部署具体流程,如果文中出现有瑕疵的地方各位通过评论或者私信联系我,我们一起进步,有兴趣的伙伴可以关注订阅一下:

点击查看更多实用技巧及技术

 

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

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

相关文章

Linux centos7 bash编程训练__打印各类形状

利用for循环,打印各种不同的三角形、矩形和菱形。 主要是fort循环嵌套使用,及条件判断等。 因方法简单,不作更多解释,部分注释可以帮助初学者掌握代码。 下面列出代码,供参考。 #! /bin/bash ## 打印输出各种*型形…

觉非科技数据闭环系列 | BEV感知研发实践

随着自动驾驶迈向量产场景,“BEV感知数据闭环”已成为新一代自动驾驶量产系统的核心架构。数据成为了至关重要的技术驱动力,发挥数据闭环的飞轮效应或将成为下半场从1到N的胜负关键。 觉非科技在此方面已进行了大量的研究工作,并在实际量产项…

解决nbsp;不生效的问题

代码块 {{title}} title:附 \xa0\xa0\xa0件,//或者 <span v-html"title"></span> title:附 件&#xff1a;,效果图

Elasticsearch近实时架构

1 Elasticsearch 与 Lucene 的结构理解 一个Elasticsearch索引由一个或多个分片&#xff08;shards&#xff09;组成。这些分片可以是主分片&#xff08;primary shard&#xff09;或副本分片&#xff08;replica shard&#xff09;。每个分片都是一个独立的Lucene索引&#xf…

Unity 性能优化Shader分析处理函数:ShaderUtil.GetShaderGlobalKeywords用法

Unity 性能优化Shader分析处理函数&#xff1a;ShaderUtil.GetShaderGlobalKeywords用法 点击封面跳转下载页面 简介 Unity 性能优化Shader分析处理函数&#xff1a;ShaderUtil.GetShaderGlobalKeywords用法 在Unity开发中&#xff0c;性能优化是一个非常重要的方面。一个常见…

修改Tomcat的默认端口号

1、找到Tomcat的安装路径。 2、打开conf文件夹。 3、用记事本打开server.xml文件 4、找到 <Connector port"8080" protocol"HTTP/1.1"&#xff0c;其中的8080就是tomcat的默认端口&#xff0c;将其修改为你需要的端口即可。

github 创建自己的分支 并下载代码

github创建自己的分支 并下载代码 目录概述需求&#xff1a; 设计思路实现思路分析1.进入到master分支&#xff0c;git checkout master;2.master-slave的个人远程仓库3.爬虫调度器4.建立本地分支与个人远程分支之间的联系5.master 拓展实现 参考资料和推荐阅读 Survive by day…

Prometheus 监控指南:如何可靠地记录数字时间序列数据

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f405;&#x1f43e;猫头虎建议程序员必备技术栈一览表&#x1f4d6;&#xff1a; &#x1f6e0;️ 全栈技术 Full Stack: &#x1f4da…

第69步 时间序列建模实战:ARIMA建模(R)

基于WIN10的64位系统演示 一、写在前面 这一期&#xff0c;我们使用R进行SARIMA模型的构建。 同样&#xff0c;这里使用这个数据&#xff1a; 《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Re…

html的日期选择插件

1.效果 2.文档 https://layui.gitee.io/v2/docs/ 3.引入 官网地址&#xff1a; https://layui.gitee.io/v2/ 引入&#xff08;在官网下载&#xff0c;&#xff09;jquery-1.7.2.min.js,layui/layui.js **<link href"js/layui/css/layui.css" rel"stylesh…

Mysql数据库基础和增删改查操作

一、数据库基本概念 数据&#xff1a;描述事物的符号记录&#xff0c;包括数字&#xff0c;文字、图形、图像、声音、档案记录等&#xff0c;以“记录”形式按统一的格式进行存储。 表&#xff1a;将不同的记录组织在一起用来存储具体数据。 数据库&#xff1a;表的集合&…

10.2 整流电路

在分析整流电路时&#xff0c;为了突出重点&#xff0c;简化分析过程&#xff0c;一般均假定负载为纯电阻性&#xff1b;整流二极管为理想二极管&#xff0c;即导通时正向压降为零&#xff0c;截止时反向电流为零&#xff1b;变压器无损耗&#xff0c;内部压降为零等。 一、整…

java封装国密SM4为 jar包,PHP调用

java封装国密SM4为 jar包,PHP调用 创建java工程引入SM4 jar包封装CMD可调用jar包PHP 传参调用刚用java弄了个class给php调用,本以为项目上用到java封装功能的事情就结束了,没想到又来了java的加密需求,这玩意上头,毕竟不是强项,没办法,只好再次封装。 但是这次的有点不…

thinkPhp5返回某些指定字段

//去除掉密码$db new UserModel();$result $db->field(password,true)->where("username{$params[username]} AND password{$params[password]}")->find(); 或者指定要的字段的数组 $db new UserModel();$result $db->field([username,create_time…

总结986

时间记录&#xff1a; 7:10起床 8:00~下午2:00课程设计&#xff0c;偷学了3小时 2:17~3:55午觉 4:10~5:30计网 5:35~6:41数据结构 7:00~7:22继续数据结构课后习题重做 7:23~8:07考研政治&#xff0c;做题20道纠错 8:15~8:39每日长难句 8:39~10:21 14年tex2纠错标记 1…

【算法训练-数组 四】【合并】:合并两个有序数组

废话不多说&#xff0c;喊一句号子鼓励自己&#xff1a;程序员永不失业&#xff0c;程序员走向架构&#xff01;本篇Blog的主题是【数组合并】&#xff0c;使用【数组】这个基本的数据结构来实现&#xff0c;这个高频题的站点是&#xff1a;CodeTop&#xff0c;筛选条件为&…

LeetCode(力扣)122. 买卖股票的最佳时机 II

LeetCode122. 买卖股票的最佳时机 II 题目链接代码 题目链接 https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/ 代码 class Solution:def maxProfit(self, prices: List[int]) -> int:result 0for i in range(1, len(prices)):result max((prices[i…

沙丁鱼优化算法(Sardine optimization algorithm,SOA)求解23个函数MATLAB

一、沙丁鱼优化算法 沙丁鱼优化算法(Sardine optimization algorithm,SOA)由Zhang HongGuang等人于2023年提出&#xff0c;该算法模拟沙丁鱼的生存策略&#xff0c;具有搜索能力强&#xff0c;求解精度高等特点。 沙丁鱼主要以浮游生物为食&#xff0c;这些生物包括细菌、腔肠…

【实操干货】如何开始用Qt Widgets编程?(五)

Qt 是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写&#xff0c;所有平台无差别运行&#xff0c;更提供了几乎所有开发过程中需要用到的工具。如今&#xff0c;Qt已被运用于超过70个行业、数千家企业&#xff0c;支持数百万设备及应用。 在本文中&#xff0…

查看Android App包名,查看keystore的信息,导出公钥

查看Android App包名的三种方法 cmd中输入命令&#xff1a;adb shell am monitor 然后启动需要获取包名的应用cmd中输入命令&#xff1a;adb shell pm list packages -3 查看自己安装的app包名安卓系统中&#xff1a;设置——应用——正在运行 查看…