如何搭建一个网站
访问页面时从 客户端发送请求 到 服务器响应 的过程
https://www.cnblogs.com/yjh1995/p/15902662.html
首先,客户端,通常是浏览器或者一些应用发送请求到你的服务器地址,比如访问你的Url或者其他的资源。
而我们的服务器通常要分为两个部分,一部分是服务器硬件,有了硬件之后还有有硬件上对应运行
的软件。
其次,即服务器软件,服务器的硬件部分接收到了这一段请求,将其递交给对应的进程,也就是服
务器软件。
此时,这个服务器软件即为Web服务器,比如说Apache。
再然后,这些Web服务器本身不一定提供动态页面的访问能力,所以对jsp或者一些其他的访问需要使用其他工具来辅助实现,类似于插件(客观来讲Tomcat不是Apache的一个插件,在这里暂且理解为插件)。
此时,这个插件就是Tomcat,Tomcat是一个运行环境,也可以叫做web容器。
Tomcat负责实例化jsp并且处理请求(通俗的讲就是“运行”jsp,搞到对应的响应信息),并且返回一个响应到apache,apache再调度硬件资源,则继续将响应返回到客户端。
至此,一个响应完成。
1、服务器
服务器与家庭电脑的区别是什么?
服务器:注重性能优化、稳定性高
主机是硬件,部署的操作系统:Windows 2000、2003、2008、2012、2016、2019硬件角度上说就是一台高性能的Computer
我们通常指的服务器是装有能够处理具体请求事务的服务器软件的Computer
比如最常见的www服务器、mail服务器、计费服务器、ftp服务器等等
很多时候也把诸如Tomcat、IIS、Weblogic 也称之为web服务器,其实这些只是用于开发、集成、部署和管理Web应用、网络应用和数据库应用的应用服务器软件
Web服务器
VMware Workstation:虚拟化技术,将本机的硬件配置分配给创建的虚拟机
web服务器可以处理Http协议,当web服务器接受到一个Http请求,会返回一个Http响应,例如送回一个HtMl页面
web服务器可以响应针对静态页面或者图片的请求,进行页面跳转(redirect),或者把动态响应(dynamic response)的产生委托(delegate)给一些其它的程序
例如 CGI 脚本,JSP(JavaServer Pages)脚本,servlets,ASP(Active Server Pages)脚本,服务器端 JavaScript,或者一些其它的服务器端技术
web服务器仅仅提供一个可以执行服务器端程序和返回(程序产生)响应的环境,而不会超出职能范围
web服务器主要是处理需要向浏览器发送Html的请求以供浏览
Web服务器也可以叫做应用服务器。它的功能比web容器要强大的多,因为它可以部署EJB应用,可以实现容器管理的事务
一般的应用服务器有weblogic和websphere等,它们都是商业服务器,功能强大但都是收费的
Web应用程序需要部署到Web容器或者Web服务器中才能运行,两者都必须符合J2EE规范
Web容器
web容器就是一种服务程序,在服务器中一个端口就对应一个提供相应服务的程序(比如Apache默认的端口为80),给处于其中的应用程序组件提供环境,使其直接跟容器中的环境变量交互,不必关注其它系统问题
而这个程序就是处理服务器从客户端收到的请求,如Java中的Tomcat容器,ASP的IIS都是这样的容器
这些容器兼容了Web服务器软件的一些功能,一个服务器可以有多个容器
常见的web容器:
Servlet(Server Applet):全称 Java Servlet,是用 Java 编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。狭义的 Servlet 是指 Java 语言实现的一个接口,广义的 Servlet 是指任何实现了这个 Servlet 接口的类
Servlet 运行于支持 Java 的应用服务器中。从实现上讲,Servlet 可以响应任何类型的请求,但绝大多数情况下 Servlet 只用来扩展基于 HTTP 协议的 Web 服务器
Apache:Apache就是一个服务器(软件),提供了静态页面的访问能力。它配置上插件
(模块)后可以以各种语言实现动态页面。(但是一定要注意Tomcat并不是Apache的插件)
Apache Tomcat(即平时所说的Tomcat):也是一个服务器,主要用来管理jsp、servlet的生命周期,包括创建、运行、销毁,也就是说,没有Tomcat,Apache是不能识别JSP的
同时也是jsp、servlet的运行环境,通俗点说,请求发过来,Tomcat负责执行JSP、Servlet,并返回结果
Jboss:JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3.0的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用
作为Java EE应用服务器,它不但是Servlet容器,而且是EJB容器,受到企业级开发人员的欢迎,从而弥补了Tomcat只是一个Servlet容器的缺憾。
weblogic:WebLogic是美国bea公司出品的一个application server确切的说是一个基于j2ee架构的中间件。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中
webSphere:WebSphere是 IBM 的集成软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的集成软件
区别:
1、价位不同:
JBoss与Tomcat的是免费开源的
WebLogic与WebSphere是收费的,而且价格不菲
2、对技术的支持:
Tomcat不支持EJB
JBoss是实现了EJB容器,再集成了Tomcat
WebLogic与WebSphere都是对业内多种标准的全面支持,包括EJB、JSB、JMS、JDBC、XML和WML,使Web应用系统的实施更为简单,同时也使基于标准的解决方案的开发更加简便
3、应用范围的区别:
Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选
Weblogic和WebSphere是商业软件,功能齐全强大,主要应用于大型企业的大型项目
JBOSS只要应用于EJB服务的中小型公司
家庭电脑:注重用户体验性,蓝屏、卡顿
操作系统:Windows XP、win 7、win 8.1(对应2012)、win 10(对应2016)、win 11(对应2019)
2、容器
web应用服务器(容器)
IIS Apache Nginx Tomcat
协议
web应用通信协议:http、https
常用协议:http、https、tcp/ip、udp、dns、icmp
端口
web应用默认服务端口:80
3、Vmware+windows server 2016 安装
3.1、下载vmware虚拟机
安装测试环境,快速还原,避免本机中木马
注意:如果是校园网,安装完成后可能会没有网卡,需要使用管理员模式安装vmware也可以使用手机热点进行安装和配置网络
安装时如果虚拟化禁用,进入BIOS开启虚拟化功能
3.2、下载系统镜像--windows server 2016
下载地址: https://msdn.itellyou.cn/
3.3、网络配置
win + x 打开菜单列表,-->点击进入PowerShell
ipconfig /all此时,查看带有IPV4信息的网卡
打开编辑-->虚拟网络编辑器
桥接模式vmnet0网卡选择本机的网卡,点击应用-->确定
右键点击2016虚拟机,可移动设备-->网络适配器-->设置:
点击网络适配器-->选择自定义:vmnet0(桥接模式)-->点击确定:
关闭IE增强的安全配置,避免打开浏览器时弹窗
本地服务器-->IE增强的安全配置