WEB集群——http、tomcat

1. 简述静态网页和动态网页的区别。

2. 简述 Webl.0 和 Web2.0 的区别。

3. 安装tomcat8,配置服务启动脚本,部署jpress应用。


1. 简述静态网页和动态网页的区别。

1)、静态网页

(1)、什么是静态网页

         请求响应信息,发给客户端进行处理,由浏览器进行解析,显示的页面称为静态页面
在网站设计中,纯粹 HTML 格式的网页(可以包含图片、视频 JS ( 前端功能实现)、 CSS ( 样式)等)通常 被称为" 静态网页 "

(2)、静态网页的优势

1. 访问的效率比较高
2. 网页内容是固定不变的,因此,容易被搜索引擎收录
3. 网页程序在用户浏览器端解析,当客户端向服务器请求数据时,服务器会直接从磁盘文件系统上返回数据(不做任何解析)

(3)、静态网页的劣势

1. 网页页面交互性交差,因为不能与数据库配合
2. 保存在网站服务器文件系统上的,是实实在在保存在服务器上的文件实体

(4)、静态网页的特征

1. 处理文件类型:如.htmljpg.gif.mp4.swf.avi.wmv.flv-

2. 地址中不含有问号 " " & 等特殊符号。
3. 保存在网站服务器文件系统上的,是实实在在保存在服务器上的文件实体
4. 页内容是固定不变的,因此,容易被搜索引擎收录
5. 网页页面交互性交差,因为不能与数据库配合
6. 网页程序在用户浏览器端解析,当客户端向服务器请求数据时,服务器会直接从磁盘文件系 统上返回数据(不做任何解析)

2)、动态网页

(1)、什么是动态网页

  所谓的动态网页是与静态网页相对而言的,也就是说,动态网页的 URL 后缀不是 .html
.htm .xml .shtml .js css 等静态网页的常见扩展名形式,是 .asp .aspx .php .js .do .cgi 等 形式 请求响应信息,发给事务端进行处理,由服务端处理完成,将信息返回给客户端,生成的页面称为“动态页面”

(2)、动态网页的优势

客户端与服务器交互能力强

(3)、动态网页的劣势

1. 访问的效率比较低
2. 不便于被搜索引擎收录

3)、两者之间的区别

        静态网页在IE浏览器地址栏里可以看到是html或者htm结尾,网站网页内容固定不变,在服务器端与客户端的页面内容是完全相同的。当用户浏览器向网页服务器请求提供网页内容时,服务器只是将原已设计好的静态HTML文档直接传送给客户端浏览器。页面的内容使用的标准的 HTML编码加上gif图像。要更新网页的时候,只有手动地来更新所有的HTML文件。

        静态网站的致命弱点就是不易维护,为了不断更新网页内容,你必须不断地重复制作HTML文档,随着网站内容和信息量的日益扩增,你就会感到工作量大得出乎想象。而动态网页在地址栏里有asp或者php关键字,在服务器端与客户端的页面内容不相同。最原始的页面存在服务器端,根据用户反馈的内容或者要求,在服务器端计算得出结果以后,直接把结果传递到客户端电脑上显示出来。

 2. 简述 Webl.0 和 Web2.0 的区别。

Web2.0 是相对Web1.0 的新的一类互联网应用的统称。

Web1.0 的主要特点在于用户通过浏览器获取信息。

Web2.0 则更注重用户的交互作用,用户既是网站内容的浏览者,也是网站内容的制造者。

所谓网站内容的制造者是说互联网上的每一个用户不再仅仅是互联网的读者,同时也成为互联网的作者;不再仅仅是在互联网上冲浪,同时也成为波浪制造者;在模式上由单纯的“读”向“写”以及“共同建设”发展;由被动地接收互联网信息向主动创造互联网信息发展,从而更加人性化。


3. 安装tomcat8,配置服务启动脚本,部署jpress应用

1)、Tomcat的介绍

        Tomcat是 Apache 软件基金会( Apache Software Foundation )的 Jakarta 项目中的一个核心项目,由 Apache、 Sun 和其他一些公司及个人共同开发而成。
        Tomcat服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
        Tomcat和 Nginx Apache(httpd) lighttpd Web 服务器一样,具有处理 HTML 页面的功能,另外它还 是一个Servlet JSP 容器,独立的 Servlet 容器是 Tomcat 的默认模式。不过, Tomcat 处理静态 HTML 的能 力不如Nginx/Apache 服务器。
        目前Tomcat 最新版本为 9.0 Java 容器还有 resin weblogic 等。
        Tomcat官网: http://tomcat.apache.org

2)、安装

(1)、安装TomcatJDK

        JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的 java 应用程序。 JDK 是整个 java 开发的核心,它包含了JAVA 的运行环境( JVM+Java 系统类库)和 JAVA 工具。
[root@master java]# ll
total 124448
-rw-r--r--. 1 root root 127431820 Jul 22 23:52 jdk-8u261-linux-x64.rpm
[root@master java]# yum install jdk-8u261-linux-x64.rpm -y
[root@master java]# java -version
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)

        官网中下载tomcat8.5.70的压缩包

wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.70/bin/apache-tomcat-8.5.70.tar.gz

 

 

        解压 

[root@master tomcat]# tar xf apache-tomcat-8.5.70.tar.gz -C /usr/local/
[root@master tomcat]# ln -sv /usr/local/apache-tomcat-8.5.70/ /usr/local/tomcat
‘/usr/local/tomcat’ -> ‘/usr/local/apache-tomcat-8.5.70/’
[root@master tomcat]# ls /usr/local/tomcat/
bin           CONTRIBUTING.md  logs       RELEASE-NOTES  webapps
BUILDING.txt  lib              NOTICE     RUNNING.txt    work
conf          LICENSE          README.md  temp
[root@master tomcat]# yum install tomcat -y

        查看一级目录

        创建用户和组

[root@master tomcat]# groupadd -r -g 53 tomcat
[root@master tomcat]# useradd tomcat -u 53 -g 53 -r -c "Apache Tomcat" -s /sbin/nologin -d /usr/local/tomcat/
[root@master tomcat]# 

        配置文件

[root@master tomcat]# vim /usr/lib/systemd/system/tomcat.service
[Unit]
	Description=Apache Tomcat
	After=network.target remote-fs.target nss-lookup.target

	[Service]
	Type=forking
	Environment=JAVA_HOME=/usr/java/jdk1.8.0_261-amd64
	Environment=CATALINA_HOME=/usr/local/tomcat

	ExecStart=/usr/local/tomcat/bin/startup.sh
	ExecReload=/bin/kill -s HUP $MAINPID
	ExecStop=/bin/kill -s QUIT $MAINPID
	User=tomcat
	Group=tomcat
	PrivateTmp=true
	
	[Install]
	WantedBy=multi-user.target

[root@master tomcat]# systemctl daemon-reload 

         在/etc/init.d目录下,创建一个tomcat.service文件,粘贴文件内容

#!/bin/bash
	#
	# chkconfig: 35 99 28
	# description: Starts/Stops Apache Tomcat
	#
	# Tomcat 6 start/stop/status script
	#
	 
	#Location of JAVA_HOME (bin files)
	export JAVA_HOME=/usr/java/jdk1.8.0_261-amd64
	 
	#Add Java binary files to PATH
	export PATH=$JAVA_HOME/bin:$PATH
	 
	#CATALINA_HOME is the location of the bin files of Tomcat  
	export CATALINA_HOME=/usr/local/tomcat  
	 
	#CATALINA_BASE is the location of the configuration files of this instance of Tomcat
	export CATALINA_BASE=$CATALINA_HOME

	#TOMCAT_USER is the default user of tomcat
	export TOMCAT_USER=tomcat
	 
	#TOMCAT_USAGE is the message if this script is called without any options
	TOMCAT_USAGE="Usage: $0 {\e[00;32mstart\e[00m|\e[00;31mstop\e[00m|\e[00;32mstatus\e[00m|\e[00;31mrestart\e[00m}"
	 
	#SHUTDOWN_WAIT is wait time in seconds for java proccess to stop
	SHUTDOWN_WAIT=20
	 
	tomcat_pid() {
			echo `ps -fe | grep $CATALINA_BASE | grep -v grep | awk '{print $2}'`
	}
	 
	start() {
		pid=$(tomcat_pid)
		if [ -n "$pid" ]
		then
				echo -e "\e[00;31mTomcat is already running (pid: $pid)\e[00m"
		else
				# Start tomcat
				echo -e "\e[00;32mStarting tomcat\e[00m"
				#ulimit -n 100000
				#umask 007
				#/bin/su -p -s /bin/sh tomcat
				if [ `user_exists $TOMCAT_USER` = "1" ]
				then
						su $TOMCAT_USER -s /bin/bash -c $CATALINA_HOME/bin/startup.sh
				else
						sh $CATALINA_HOME/bin/startup.sh
				fi
				status
		fi
		return 0
	}
	 
	status(){
		pid=$(tomcat_pid)
			if [ -n "$pid" ]; then echo -e "\e[00;32mTomcat is running with pid: $pid\e[00m"
			else echo -e "\e[00;31mTomcat is not running\e[00m"
			fi
	}
	 
	stop() {
		pid=$(tomcat_pid)
		if [ -n "$pid" ]
		then
				echo -e "\e[00;31mStoping Tomcat\e[00m"
				#/bin/su -p -s /bin/sh tomcat
				if [ `user_exists $TOMCAT_USER` = "1" ]
				then
					su $TOMCAT_USER -s /bin/bash -c $CATALINA_HOME/bin/shutdown.sh
				else
					sh $CATALINA_HOME/bin/shutdown.sh
				fi
				let kwait=$SHUTDOWN_WAIT
				count=0;
				until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ]
				do
					echo -n -e "\e[00;31mwaiting for processes to exit\n\e[00m"
					sleep 1
					let count=$count+1;
				done
	 
				if [ $count -gt $kwait ]
				then
					echo -n -e "\e[00;31mkilling processes which didn't stop after $SHUTDOWN_WAIT seconds\n\e[00m"
					kill -9 $pid
				fi
		else
				echo -e "\e[00;31mTomcat is not running\e[00m"
		fi
	 
		return 0
	}
	 
	user_exists() {
			if id -u $1 >/dev/null 2>&1
			then
					echo "1"
				else
						echo "0"
				fi
	}
	 
	case $1 in
	 
			start)
			  start
			  ;;
		   
			stop)  
			  stop
			  ;;
		   
			restart)
			  stop
			  start
			  ;;
		   
			status)
			  status    
			  ;;
		   
			*)
			  echo -e $TOMCAT_USAGE
			  ;;
	esac    
	exit 

        添加执行权限

[root@master tomcat]# chmod +x /etc/init.d/tomcat.service 
[root@master tomcat]# chkconfig --add tomcat.service

        启动Tomcat

[root@master tomcat]# service tomcat.service start 
/etc/init.d/tomcat.service: line 1: cription:: command not found
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_261-amd64/
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.
[root@master tomcat]# 

        可以开始访问主页了
        192.168.186.251:8080

(2)、部署jpress应用

        安装数据库mariadb

[root@localhost ~]# yum install mariadb-server -y

         jpress 官网: http://jpress.io

        创建数据库和用户

[root@localhost ~]# mysql -uroot -p123456 -e  "create database jpress DEFAULT CHARACTER SET utf8;"
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@localhost ~]# mysql -uroot -p123456 -e  "grant all on jpress.* to jpress@'localhost' identified by '123456';"
mysql: [Warning] Using a password on the command line interface can be insecure.

        把下载好的.war文件放入/webapps目录下

[root@localhost ~]# ll
total 20320
-rw-------. 1 root root     1426 Jul 23 08:05 anaconda-ks.cfg
-rw-r--r--. 1 root root 20797013 Aug  2 10:54 jpress-web-newest.war
drwxr-xr-x. 3 root root       19 Jul 23 01:15 mysql
-rw-r--r--. 1 root root      336 Jul 23 23:33 temp_date.sql
drwxr-xr-x. 2 root root       41 Jul 24 03:03 tomcat
[root@localhost ~]# cp jpress-web-newest.war /usr/local/tomcat/webapps/jress-web-newest.war
[root@localhost ~]# ls /usr/local/tomcat/webapps/jress-web-newestMETA-INF  robots.txt  static  templates  WEB-INF

         使用浏览器访问

http://192.168.186.251:8080/jress-web-newest/installhttp://192.168.186.251:8080/jress-web-newest/install

         安装完成

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flink State 和 Fault Tolerance详解

有状态操作或者操作算子在处理DataStream的元素或者事件的时候需要存储计算的中间状态,这就使得状态在整个Flink的精细化计算中有着非常重要的地位: 记录数据从某一个过去时间点到当前时间的状态信息。以每分钟/小时/天汇总事件时,状态将保留…

原型链污染分析

原型链污染问题 原型链原型的继承原型链污染 原型链 原型的继承 先创建一个对象,查看一下属性 const obj { prop1: 111, prop2: 222,} 这里的Object.prototype就是对象的原型。 原型里面有许多的属性,这里面的constructor是我们需要着重关注的。 除此…

在线LaTeX公式编辑器编辑公式

在线LaTeX公式编辑器编辑公式 在编辑LaTex文档时候,需要输入公式,可以使用在线LaTeX公式编辑器编辑公式,其链接为: 在线LaTeX公式编辑器,https://www.latexlive.com/home 图1 在线LaTeX公式编辑器界面 图2 在线LaTeX公式编辑器…

【iOS RunLoop】

文章目录 前言-什么是RunLoop?默认情况下主线程的RunLoop原理 1. RunLoop对象RunLoop对象的获取 CFRunLoopRef源码部分(引入线程相关) 2. RunLoop和线程3. RunLoop相关的类RunLoop相关类的实现CFRunLoopModeRef五种运行模式CommonModes CFRun…

VBA技术资料MF39:VBA_计算单元格中的字符数

【分享成果,随喜正能量】依赖也好,不依赖也罢,人的心灵都是需要安放的,有人安放在另一个人身上,有人安放在喜欢的事业之上,有人安放在宗教信仰之上,过程不同,终点都一样,…

全面升级:华为鸿蒙HarmonyOS4正式发布,玩趣个性化,小艺AI升级

8月4日新闻,今天下午,华为正式发布了最新版本的鸿蒙操作系统——HarmonyOS 4! 在华为发布会上,鸿蒙HarmonyOS迎来了一系列令人激动的功能升级。其中包括个性化空间、多种生产力工具以及增强的手机AI助手"小艺"。这次更…

自动化应用杂志自动化应用杂志社自动化应用编辑部2023年第11期目录

数据处理与人工智能 大数据视域下无轨设备全生命周期健康管理技术的研究 赖凡; 1-3 三维激光扫描结合无人机倾斜摄影在街区改造测绘中的技术应用 张睿; 4-6 井上变电站巡检机器人的设计与应用 刘芳; 7-9 《自动化应用》投稿邮箱:cnqikantg126.com 基于机…

Visual Studio 2022的MFC框架——应用程序向导

我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来重新审视一下Visual Studio 2022开发工具下的MFC框架知识。 MFC(Microsoft Foundation Class,微软基础类库)是微软为了简化程序员的开发工作所开发的一套C类的集合&#xf…

AI 绘画Stable Diffusion 研究(三)sd模型种类介绍及安装使用详解

本文使用工具,作者:秋葉aaaki 免责声明: 工具免费提供 无任何盈利目的 大家好,我是风雨无阻。 今天为大家带来的是 AI 绘画Stable Diffusion 研究(三)sd模型种类介绍及安装使用详解。 目前,AI 绘画Stable Diffusion的…

深度学习训练营之CGAN生成手势图像

深度学习训练营之CGAN生成手势 原文链接CGAN简单介绍环境介绍前置工作数据导入所需的包加载数据创建数据集查看数据集 模型设置初始化模型的权重定义生成器构造判别器 模型训练定义损失函数设置超参数正式开始训练 结果可视化 原文链接 🍨 本文为🔗365天…

Palo Alto Networks® PA-220R 下一代防火墙 确保恶劣工况下的网络安全

一、主要安全功能 1、每时每刻在各端口对全部应用进行分类 • 将 App-ID 用于工业协议和应用,例如 Modbus、 DNP3、IEC 60870-5-104、Siemens S7、OSIsoft PI 等。 • 不论采用何种端口、SSL/SSH 加密或者其他规避技术,都会识别应用。 • 使用…

Apache Flink概述

Flink 是构建在数据流之上的一款有状态的流计算框架,通常被人们称为第三代大数据分析方案 第一代大数据处理方案:基于Hadoop的MapReduce 静态批处理 | Storm 实时流计算 ,两套独立的计算引擎,难度大(2014年9月&#x…

JavaWeb 项目实现(四) 验证旧密码

1.验证旧密码 步骤很简单,从Session中取到当前密码,和修改密码界面得到的旧密码对比,判断是否相等。 特别之处在于实现用到了Ajax,可以不刷新整个页面的情况下与Web服务器进行通信。 2.Ajax Ajax(Asynchronous Java…

Tomcat添加第三方jar包、如何在IDEA中启动部署Web模板

前言:公司最近维护老项目,是最原始的web项目,servlet和jsp结合的web项目,启动的时候配置了好几遍, 都起不来,很折磨人,这个文档比较全配置一遍准备工作 首先 拉取代码: git clone xxx.git ,如需要别的操作,自行baidu 也可以在idea中拉取第一步File ->Project Structure->…

❤ npm不是内部或外部命令,也不是可运行的程序 或批处理文件

❤ npm不是内部或外部命令,也不是可运行的程序 或批处理文件 cmd或者终端用nvm 安装提示: npm不是内部或外部命令,也不是可运行的程序或批处理文件 原因(一) 提示这个问题,有可能是Node没有安装,也有可能是没有配置…

力扣 1049. 最后一块石头的重量 II

题目来源:https://leetcode.cn/problems/last-stone-weight-ii/description/ C题解(思路来源代码随想录):本题其实就是尽量让石头分成重量相同的两堆,相撞之后剩下的石头最小,这样就化解成01背包问题了。 …

【深度学习】SMILEtrack: SiMIlarity LEarning for Multiple Object Tracking,论文

论文:https://arxiv.org/abs/2211.08824 代码:https://github.com/WWangYuHsiang/SMILEtrack 文章目录 AbstractIntroductionRelated WorkTracking-by-DetectionDetection methodData association method Tracking-by-Attention Methodology架构概述外观…

8.4 作业

1.思维导图 2.判断家目录下,普通文件的个数和目录文件的个数 #!/bin/bash count10 count20 cd ~ for i in $(ls) doif [ -f "$i" ]thencount1$((count11))elif [ -d "$i" ]then count2$((count21))fi done echo $count1 echo $count2 3.输入一…

WEB集群——tomcat

1. 简述静态网页和动态网页的区别。 2. 简述 Webl.0 和 Web2.0 的区别。 3. 安装tomcat8,配置服务启动脚本,部署jpress应用。 一、简述静态网页和动态网页的区别 (1)静态网页 1.什么是静态网页 请求响应信息,发…

高级IO:五种IO模型

五种IO模型 阻塞IO 阻塞IO: 在内核将数据准备好之前, 系统调用会一直等待. 所有的套接字, 默认都是阻塞方式. 非阻塞IO 如果内核还未将数据准备好, 系统调用仍然会直接返回, 并且返回EAGAIN/EWOULDBLOCK错误码. 非阻塞IO往往需要程序员循环的方式反复尝试读写文件描述符, 这…