当前位置: 首页 > news >正文

tomcat总结笔记

文章目录

    • Tomcat
      • 1、什么是tomcat?
      • 2、rpm安装jre环境
      • 3、源码安装jdk环境
      • 4、安装tomcat --源码安装
      • 5、相关目录文件
        • webapps
        • Tomcat 配置文件目录介绍(conf)
        • tomcat的相关管理命令在$prefix/bin目录下
    • 实战1、:配置nginx动静分离
    • 实战2、配置基于tomcat的虚拟主机配置
    • 实战3、配置jforum论坛部署
      • 配置tomcat服务启动脚本
      • 基于域名访问的host配置
      • 服务器状态查看
      • 二进制升级

Tomcat

1、什么是tomcat?

Tomcat是用于发布和解析JSP(Java Server Page)网页(基于JAVA语言开发的代码),将Tomcat称为JAVA容器,Tomcat软件本身基于JAVA语言开发。

端口号:8080

主配置文件:/usr/local/tomcat/conf/server.xml

三个端口:

​ 8080 – 默认tomcat访问端口

​ 8005 – 用于关闭tomcat的(SHUTDOWN 必须要大写,小写不管用)

8009 – AJP端口 用于Apache和Tomcat内部通讯端口

2、rpm安装jre环境

# rpm -ivh jdk-8u301-linux-x64.rpm
在/etc/profile下写入
export JAVA_HOME=/usr/java/jdk1.8.0_301-amd64    #这里安装路径自动定位在这里
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/fre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HMOE/jre/bin:$PATH
[root@hd2 ~]# source /etc/profile   
#查看java版本
[root@hd2 ~]# java -version  

3、源码安装jdk环境

1、安装JDK—源码安装

1、系统环境说明
# cat /etc/redhat-release   系统信息 
# uname -a 查看系统信息
# getenforce 
# systemctl status firewalld.service
2 、安装 JDK
# mkdir /usr/local/java 安装工作目录
# tar xzf jdk-8u60-linux-x64.tar.gz 
# mv jdk1.8.0_192 /usr/local/java/jdk	
# 设置环境变量
# vim /etc/profile
export JAVA_HOME=/usr/local/java/jdk   #指定java安装目录
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH    #用于指定java系统查找命令的路径
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar  #类的路径,在编译运行java程序时,如果有调用到其他类的时候,在classpath中寻找需要的类。
# source /etc/profile  #让环境变量生效
2、测试jdk是否安装成功
# java -version

4、安装tomcat --源码安装

# tar xvf apache-tomcat-9.0.11.tar.gz
# mkdir /usr/local/tomcat
#  mv apache-tomcat-9.0.11 /usr/local/tomcat
# 设置环境变量
# echo 'export TOMCAT_HOME=/usr/local/tomcat'>>/etc/profile
# source /etc/profile
# chown -R root.root /usr/java/jdk1.8.0_301-amd64/ /usr/local/tomcat/  # 注意授权,统一权限
2、检查tomcat是否安装成功
# /usr/local/tomcat/apache-tomcat-9.0.11/bin/startup.sh
# netstat -naput | grep tomcat(8080)

5、相关目录文件

*├── bin              #存放tomcat管理脚本 (操作命令)
*├── conf             # tomcat 配置文件
├── lib              # web应用调用的jar包存放路径
├── LICENSE
*├── logs             # tomcat 日志存放目录,catalina.out 为主要输出日志
├── NOTICE
├── RELEASE-NOTES
├── RUNNING.txt
├── temp             # 存放临时文件
*├── webapps          # web程序存放目录
└── work             # 存放编译产生的.java 与 .class文件
webapps
├── docs            # tomcat 帮助文档
├── examples       # web应用实例
├── host-manager  # 主机管理
├── manager         # 管理
└── ROOT             # 默认站点根目录
Tomcat 配置文件目录介绍(conf)
├── Catalina
├── catalina.policy     配置tomcat对文件系统中目录或文件的读、写执行等权限,及对一些内存,session等的管理权限
├── catalina.properties   配置tomcat的classpath等
├── context.xml           tomcat的默认context容器
├── logging.properties      配置tomcat的日志输出方式
├── logs
*├── server.xml           # tomcat 主配置文件
├── server.xml.bak
├── server.xml.bak2
*├── tomcat-users.xml     # tomcat 管理用户配置文件
├── tomcat-users.xsd
└── web.xml              tomcat的应用程序的部署描述符文件
tomcat的相关管理命令在$prefix/bin目录下

/usr/local/tomcat/bin

catalina.sh 主命令脚本
configtest.sh 检测配置文件
shutdown.sh 关闭
startup.sh 启动
version.sh 查看版本
netstat -naput | grep 8080  查看tomcat

实战1、:配置nginx动静分离

192.168.1.12 -- Tomcat1 & Tomcat2
192.168.1.11 -- Nginx
多实例
[root@hd2 ~]# mv /usr/local/tomcat /usr/local/tomcat1
[root@hd2 ~]# cp -a /usr/local/tomcat1/ /usr/local/tomcat2
主配置文件
[root@hd2 ~]# vim /usr/local/tomcat2/apache-tomcat-9.0.11/conf/server.xml<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
改为<Connector port="8081" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" /><Server port="8005" shutdown="SHUTDOWN">
改为<Server port="8006" shutdown="SHUTDOWN">
开启两个tomcat
[root@hd2 ~]# /usr/local/tomcat1/apache-tomcat-9.0.11/bin/startup.sh
Tomcat started.
[root@hd2 ~]#  /usr/local/tomcat2/apache-tomcat-9.0.11/bin/startup.sh
Tomcat started.
查看
[root@hd2 ~]# ps -ef | grep tomcat
tomcat默认访问目录
/usr/local/tomcat2/webapps下 ROOT目录
建立index.jsp测试代码
<html>
<body>
<h1>JSP Test Page tomcat2 </h1>
<%=new java.util.Date()%>
</body>
</html>安装Nginx 并创建虚拟主机
[root@hd1~]# wget http://www.nginx.org/download/nginx-1.14.2.tar.gz
[root@hd1 ~]# yum -y install openssl-devel
[root@hd1 ~]# useradd www
[root@hd1 ~]# tar -xvf nginx-1.14.2.tar.gz
[root@hd1 ~]# cd nginx-1.14.2
[root@hd1 ~]# ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module
[root@Hd2-LB nginx-1.14.2]#make && make install 
修改配置文件,创建虚拟主机
[root@hd1 ~]#  cd /usr/local/nginx/conf/
[root@hd1 ~]# mv nginx.conf nginx.conf.bak
[root@hd1 ~]# egrep -v "#|^$" nginx.conf.bak > nginx.conf
[root@hd1 ~]# vim nginx.conf
worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;
keepalive_timeout  65;
#这是我们自己添加的一个子配置文件路径include /usr/local/domain/*;
}
[root@hd1 ~]#  mkdir /usr/local/domain
[root@hd1 ~]# vim /usr/local/domain/bbs.a.conf  
upstream tomcat_web {server 192.168.1.12:8080 weight=1 max_fails=2 fail_timeout=15;server 192.168.1.12:8081 weight=1 max_fails=2 fail_timeout=15;}
server {listen 80;server_name bbs.a.com;location / {root html;index index.html index.htm;proxy_set_header Host $host;proxy_pass http://tomcat_web;}location ~* .*\.(html|htm|js|png|jpg|gif|css|jpeg|txt|gz|bz2|zip|bmp|doc|xls|docx)$ {root /var/www/html;expires 30d;}
}
#location ~* 表示不区分大小写匹配  .*\.(html|htm)$ 正则表达式表示以.html或htm结尾的所有网页
启动nginx
[root@hd1 ~]# /usr/local/nginx/sbin/nginx
[root@hd1 ~]# mkdir /var/www/html -p
[root@hd1 ~]# cd /var/www/html
[root@hd1 ~]# echo "wo shi nginx web" >index.html
重启tomcat
[root@hd2 ~]#  /usr/local/tomcat1/bin/shutdown.sh
[root@hd2 ~]# /usr/local/tomcat1/bin/startup.sh
[root@hd2 ~]#  /usr/local/tomcat2/bin/shutdown.sh
[root@hd2 ~]#  /usr/local/tomcat2/bin/startup.sh测试一下负载均衡集群
这里的ip是nginx的ip
[root@hd1 ~]#  curl 192.168.8.139/index.jsp
<html>
<body>
<h1>JSP Test Page tomcat1 </h1>
Thu Jul 29 21:47:01 CST 2021
</body>
</html>
[root@hd1 ~]#  curl 192.168.8.139/index.html
wo shi nginx web

实战2、配置基于tomcat的虚拟主机配置

Tomcat配置文件,一对Host标签就是一个虚拟主机,即相当于一个nginx中的server模块
基于tomcat1的多虚拟主机配置  两个网站分别是:www.a.com 和www.b.com
#autoDeploy=true 表示自动部署(jvm)
#unpackWARs=true  表示自动解压war包
#&quot表示双引号[root@hd2 ~]# vim /usr/local/tomcat1/conf/server.xml<Host name="www.a.com"  appBase="webapps/a"unpackWARs="true" autoDeploy="true"><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_access_log" suffix=".txt"pattern="%h %l %u %t &quot;%r&quot; %s %b" /></Host><Host name="www.b.com"  appBase="webapps/b"unpackWARs="true" autoDeploy="true"><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_access_log" suffix=".txt"pattern="%h %l %u %t &quot;%r&quot; %s %b" /></Host>   
#日志格式对比(重要)
含义   	tomcat	                nginx
客户端ip地址	%h	                $remote_addr
时间	      %t	              $time_local
请求	      %r	              $request
状态码	     %S  	              $status
资源大小	%b	                 $body_bytes_sent
跳转	 %{Referer}i	          $http_referer
客户端	%{User-Agent}i	          $http_user_agent
真实客户端ip	%{X-Forwarded-For}	$http_x_forwarded_for配置两个虚拟站点的环境
[root@hd2 ]# cd /usr/local/tomcat1/webapps/
[root@hd2 webapps]# mkdir a/ROOT b/ROOT -p
[root@Hd2 webapps]# echo "wo shi t a" >a/ROOT/index.html
[root@Hd2 webapps]# echo "wo shi t b" >b/ROOT/index.html
[root@Hd2 webapps]# /usr/local/tomcat1/bin/shutdown.sh 
[root@Hd2 webapps]# /usr/local/tomcat1/bin/startup.sh
配置windows主机的hosts文件设置内容如下:
/windows/system32/drivers/etc/hosts
192.168.0.12 www.a.com www.b.com
测试
curl 192.168.8.138:8080
curl www.a.com:8080

实战3、配置jforum论坛部署

#将war包上传到/root目录之下
[root@hd2 ROOT]# pwd
/usr/local/tomcat1/webapps/a/ROOT 
[root@hd2 ROOT]# mv /root/jforum-2.7.0.war  . 
[root@hd2 ROOT]#  jar xf jforum-2.6.2.war重启tomcat
[root@hd2 ~]#  /usr/local/tomcat1/bin/shutdown.sh
[root@hd2 ~]#/usr/local/tomcat1/bin/startup.sh

配置tomcat服务启动脚本

tomcat提供了方便的启动命令脚本,但是却没有提供服务器中经常管理使用的service脚本。可以自行编写服务管理脚
本
1.编辑启动脚本,生成tomcat.pid
# cd /usr/local/tomcat1/apache-tomcat-9.0.11/bin/
# vim catalina.sh
137gg  跳转到137行
在PRGDIR下面添加
CATALINA_PID=/var/run/tomcat.pid
2.

基于域名访问的host配置

1、建立项目目录并写入测试文件
# cd /usr/local/tomcat/webapps/
# mkdir devops/ROOT -p
# cd /devops/ROOT
# touch index.html
# echo "this is tomcat.devops.com"
2、编辑/usr/local/tomcat/conf/server.xml
# vim /usr/local/tomcat/conf/server.xml
添加
<Host name="localhost"  appBase="webapps/devops">
</Host>
name可以写成域名
<Host name="tomcat.devops.com"  appBase="webapps/devops">
</Host>
3、检测配置并重启
# service tomcat configtest
# service tomcat restart
4、访问主机解析域名
# vim /etc/hosts
192.168.8.138 tomcat.devops.com
5、测试

服务器状态查看

1.去掉访问ip限制

vim /usr/local/tomcat1/apache-tomcat-9.0.11/webapps/manager/META-INF/context.xml

注释掉

2、创建用户和密码开启访问权限

vim /usr/local/tomcat/conf/tomcat-users.xml

加入

二进制升级

TERM, INT(快速退出,当前的请求不执行完成就退出) -s stop
QUIT (优雅退出,执行完当前的请求后退出)  -s quit
HUP (重新加载配置文件,用新的配置文件启动新worker进程,并优雅的关闭旧的worker进程) -s reload
USR1 (重新打开日志文件)  -s reopen
USR2 (平滑的升级nginx二进制文件  拉起一个新的主进程  旧主进程不停止)
WINCH (优雅的关闭worker进程)1、nginx的升级
# ps -ef | grep 80(nginx)
# kill -USR2 nginx主进程号   平滑的启动一个进程 升级操作
# kill -WINCH nginx子进程号 优雅的关闭子进程
# kill -QUIT nginx主进程    优雅的关闭主进程
#修改路由
echo "1" >/proc/sys/net/ipv4/ip forward①编译安装新版本
# shell > tar xvf nginx-1.16.0.tar.gz
# shell > cd nginx-1.16.0
# shell > ./configure  --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module  --with-http_stub_status_module --with-http_realip_module
# shell > make && make install
②新旧版本同时运行
# shell > kill -USR2 主进程号
③停止掉旧进程
# shell > kill -WINCH 旧的工作进程号
# shell > kill -QUIT 旧的主进程号
在nginx中,默认提供了平滑升级的操作,只需要执行以下命令
#注意先configure  在nginx源码包执行
# shell > make install && make upgrade

相关文章:

tomcat总结笔记

文章目录 Tomcat1、什么是tomcat?2、rpm安装jre环境3、源码安装jdk环境4、安装tomcat --源码安装5、相关目录文件webappsTomcat 配置文件目录介绍&#xff08;conf&#xff09;tomcat的相关管理命令在$prefix/bin目录下 实战1、&#xff1a;配置nginx动静分离实战2、配置基于t…...

中断向量控制器(NVIC)

1. 什么是中断 在处理器中&#xff0c;中断是一个过程&#xff0c;即CPU在正常执行程序的过程中&#xff0c;遇到外部/内部的紧急事件需要处理&#xff0c;暂时中止当前程序的执行&#xff0c;转而去为处理紧急的事件&#xff0c;待处理完毕后再返回被打断的程序处继续往下执行…...

QT配置FFmpeg出现错误原因

文章目录 QT配置ffmpeg出现&#xff1a; undefined reference to "avcodec_version"没有配置环境变量QT和FFmpeg的版本不对应直接添加FFmpeg的头文件没有在.pro文件添加路径 QT 程序异常退出没有在debug文件里面存放dll库 QT配置ffmpeg出现&#xff1a; undefined re…...

列出使用Typescript的一些优点?

使用Typescript有以下优点&#xff1a; 类型安全&#xff1a;Typescript是一种静态类型语言&#xff0c;它要求在编码阶段明确定义变量和函数的类型。这种类型安全可以减少在运行时出现错误的可能性&#xff0c;并提高代码的可读性和可维护性。代码可读性和可维护性&#xff1…...

如何做好测试?(四)集成测试(Integration Testing, IT)

1. 集成测试的详细介绍&#xff1a; 集成测试&#xff08;Integration Testing, IT&#xff09;&#xff0c;是一种软件测试方法&#xff0c;旨在验证不同组件、模块或子系统之间的交互和集成是否正常工作。它侧重于测试系统的组件之间的接口和数据传递&#xff0c;以确保它们…...

二叉树前序、中序、后序遍历(递归法、迭代法)

前序遍历&#xff1a;&#xff08;练习题&#xff09; 迭代法一&#xff1a; int TreeSize(struct TreeNode* root){return rootNULL?0:TreeSize(root->left)TreeSize(root->right)1; }int* preorderTraversal(struct TreeNode* root, int* returnSize){if(rootNULL){*…...

npm ,yarn 更换使用国内镜像源,淘宝源

背景 文章首发地址 在平时开发当中&#xff0c;我们经常会使用 Npm&#xff0c;yarn 来构建 web 项目。但是npm默认的源的服务器是在国外的&#xff0c;如果没有梯子的话。下载速度会特别慢。那有没有方法解决呢&#xff1f; 其实是有的&#xff0c;设置国内镜像即可&#x…...

真正理解浏览器渲染更新流程

浏览器渲染更新过程 文章目录 浏览器渲染更新过程帧维度解释帧渲染过程一些名词解释Renderer进程GPU进程rendering(渲染) vs painting(绘制)⭐位图纹理Rasterize(光栅化) 1. 浏览器的某一帧开始&#xff1a;vsync2. Input event handlers3. requestAnimationFrame4. 强制重排(可…...

市场调研的步骤与技巧:助你了解市场需求

在当今快速发展的市场中&#xff0c;进行有效的市场研究对于了解消费者的行为、偏好和趋势至关重要。适当的市场研究可以帮助公司获得对目标受众的有价值的见解&#xff0c;创造更好的产品和服务&#xff0c;并提高客户满意度。今天&#xff0c;小编和大家一起讨论一下怎么做市…...

ansible的个人笔记使用记录-个人心得总结

1.shell模块使用&#xff0c;shell模块------执行命令&#xff0c;支持特殊符 ansible all -m shell -a yum -y install nginx ansible all -m shell -a systemctl restart nginx ansible all -m shell -a systemctl stop nginx && yum -y remove nginx2. file模块…...

相机数据恢复!详细步骤解析(2023新版)

和朋友在外面旅游用相机拍了好多有意义的照片和视频&#xff0c;但是导入电脑后不知道是被我删除了还是什么原因&#xff0c;这些照片都不见了&#xff0c;请问有方法恢复吗&#xff1f;” 在数字摄影时代&#xff0c;我们依赖相机记录珍贵的瞬间。然而&#xff0c;相机数据丢失…...

LNK2001: unresolved external symbol __imp___std_init_once_begin_initialize 问题解决

LNK2001: unresolved external symbol __imp___std_init_once_begin_initialize 解决 文章目录 问题背景方法一&#xff1a;使用预编译指令方法二&#xff1a;使用相同的环境 参考链接附录 问题背景 Visual Studio 2019 对 CMakeLists.txt 的支持不是很好&#xff0c;使用 “文…...

修改switch Nand无线区码 以支持高频5G 信道

环境&#xff1a;NS switch 问题&#xff1a;日版&#xff0c;港版无法连接大于44信道的5G WIFI 解决办法&#xff1a;修改PRODINFO.dec的WIFI 区域码 背景&#xff1a;我的switch是最早买的港版的一批&#xff0c;WIFI 只能连接日本的信道&#xff0c;家里的路由器是国行的&am…...

基于SpringBoot的课程答疑系统

目录 前言 一、技术栈 二、系统功能介绍 学生信息管理 科目类型管理 老师回答管理 我的收藏管理 学生问题 留言反馈 交流区 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息互联网信息的飞速发展&#xff0c;无纸化作业变成了一种趋势&#x…...

JAVA中的泛型

一、泛型的概念 泛型是JAVA中的一个重要的概念&#xff0c;它允许你在编译时指定数据类型&#xff0c;从而使得代码更加灵活&#xff0c;更加通用。通过泛型&#xff0c;你可以在通用代码上操作不同数据类型&#xff0c;使得代码更加具有通用性。 二、泛型的使用场景 1、泛型…...

日撸代码300行:第73天(固定激活函数的BP神经网络,训练与测试过程理解)

进一步梳理理解了一下正向和反向传播。Forward 是利用当前网络对一条数据进行预测的过程&#xff0c;BackPropagation 是根据误差进行网络权重调节的过程。 完整的代码在72天&#xff0c;这里只粘贴Forward和BackPropagation两个方法。 /*** *********************************…...

css中常用单位辨析

辨析 px&#xff1a;像素&#xff1b;css中最普遍最常用的单位&#xff0c;不管在何种设备或分辨率上&#xff0c;1px始终代表屏幕上的一个像素。 %&#xff1a;百分比&#xff1b;基于父元素相对属性的百分比。 em&#xff1a;当前字体大小的倍数&#xff1b;基于父元素字体…...

Unity 一些常用特性收集

常用的类的特性 特性效果[Serializable]可序列化&#xff0c;作为一个子属性显示在Inspector面板[RequireComponent(typeof(CoomponnetName))]该类挂载的游戏物体&#xff0c;需要要有对应的组件[DisallowMultipleComponent]不允许挂载多个该类或其子类[ExecuteInEditMode]允许…...

select实现服务器并发

select的TCP服务器代码 #include <stdio.h> #include <unistd.h> #include <string.h> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <netinet/in.h> #include <sys/select.h> #include…...

【Spring底层原理】BeanFactory的实现

&#x1f40c;个人主页&#xff1a; &#x1f40c; 叶落闲庭 &#x1f4a8;我的专栏&#xff1a;&#x1f4a8; c语言 数据结构 javaEE 操作系统 Redis 石可破也&#xff0c;而不可夺坚&#xff1b;丹可磨也&#xff0c;而不可夺赤。 容器实现 一、BeanFactory实现的特点1.1 Be…...

c++---I/o操作

5、文件操作 程序运行时产生的数据都属于临时数据&#xff0c;程序一旦运行结束都会被释放。 我们可以通过文件将数据持久化 C中对文件操作需要包含头文件 <fstream> 文件类型分为两种&#xff1a; 文本文件 - 文件以文本的ASCII码形式存储在计算机中二进制文件 - 文…...

UG\NX二次开发 用程序修改“用户默认设置”

文章作者:里海 来源网站:《里海NX二次开发3000例专栏》 简介 可以用程序修改“用户默认设置”吗?下面是用代码修改“用户默认设置->基本环境->用户界面->操作记录->操作记录语言”的例子。 效果 代码 #include <uf_defs.h> #include <NXOpen/NXExcept…...

什么是信号处理?如何处理信号?

C语言信号处理详解 第一部分&#xff1a;什么是信号&#xff1f; 信号是一种进程间通信的机制&#xff0c;用于通知进程发生了某种事件或异常情况。在C语言中&#xff0c;信号是一种软件中断&#xff0c;它可以被操作系统或其他进程发送给目标进程。每个信号都有一个唯一的数…...

谈谈 Redis 数据类型底层的数据结构?

谈谈 Redis 数据类型底层的数据结构? RedisObject 在 Redis 中&#xff0c;redisObject 是一个非常重要的数据结构&#xff0c;它用于保存字符串、列表、集合、哈希表和有序集合等类型的值。以下是关于 redisObject 结构体的定义&#xff1a; typedef struct redisObject {…...

九、GC收集日志

JVM由浅入深系列一、关于Java性能的误解二、Java性能概述三、了解JVM概述四、探索JVM架构五、垃圾收集基础六、HotSpot中的垃圾收集七、垃圾收集中级八、垃圾收集高级👋GC收集日志 ⚽️1. 认识GC收集日志 垃圾收集日志是一个重要的信息来源,对于与性能相关的一些悬而未决的…...

SimpleCG动画示例--汉诺塔动画演示

前言 SimpleCG的使用方法在前面已经介绍了许多&#xff0c;有兴趣的同学如果有去动手&#xff0c;制作一些简单动画应该没多大问题的。所以这次我们来演示一下简单动画。我们刚学习C语言的递归函数时&#xff0c;有一个经典例子相信很多同学都写过&#xff0c;那就是汉诺塔。那…...

反弹shell脚本(php-reverse-shell)

平时经常打靶机 这里贴一个 反弹shell的脚本 <?php // php-reverse-shell - A Reverse Shell implementation in PHP // Copyright (C) 2007 pentestmonkeypentestmonkey.net // // This tool may be used for legal purposes only. Users take full responsibility // f…...

XSS-labs

XSS常见的触发标签_xss标签_H3rmesk1t的博客-CSDN博客 该补习补习xss漏洞了 漏洞原理 网站存在 静态 和 动态 网站 xss 针对的网站 就是 动态网站 动态网站会根据 用户的环境 与 需求 反馈出 不同的响应静态页面 代码写死了 只会存在代码中有的内容 通过动态网站 用户体…...

C++简单实现AVL树

目录 一、AVL树的概念 二、AVL树的性质 三、AVL树节点的定义 四、AVL树的插入 4.1 parent的平衡因子为0 4.2 parent的平衡因子为1或-1 4.3 parent的平衡因子为2或-2 4.3.1 左单旋 4.3.2 右单旋 4.3.3 先左单旋再右单旋 4.3.4 先右单旋再左单旋 4.4 插入节点完整代码…...

UE4 Cesium 与ultra dynamic sky插件天气融合

晴天&#xff1a; 雨天&#xff1a; 雨天湿度&#xff1a; 小雪&#xff1a; 中雪&#xff1a; 找到该路径这个材质&#xff1a; 双击点开&#xff1a; 将Wet_Weather_Effects与Snow_Weather_Effects复制下来&#xff0c;包括参数节点 找到该路径这个材质&#xff0c;双击点开&…...

自己做的网站怎么管理用户/seo网站排名全选

If you want something done right, do it yourself. -- 夏尔纪尧姆 属性动画 CAAnimationDelegate 在任何头文件中都找不到&#xff0c;但是可以在CAAnimation头 文件或者苹果开发者文档中找到相关函数。在这个例子中&#xff0c;我们用-animationDidStop: finished:方法在动画…...

福田外贸网站建设/软件开发网站

制造业税务成本100问-71(转载) 71。在成品直接原料明细表中如何表达本月约当量成本&#xff1f;71。在成品直接原料明细表中如何表达本月约当量成本&#xff1f;为了正确表达成品直接原料明细表中&#xff0c;确实投入生产的原料&#xff0c;所以必需要剔除属于在制品部份的原料…...

可信网站身份验证 必须做吗/杭州网站优化

今天中午&#xff0c;买上菜以后&#xff0c;由于拿着菜找菜&#xff0c;朋友说我&#xff0c;该歇歇了&#xff0c;都精神恍惚了。的确&#xff0c;我这几天办的糊涂事真是不少&#xff0c;只一天早上我就做了好几次糊涂事&#xff0c;先是拿洗面奶往头上涂&#xff0c;接着就…...

教做高级料理的网站/win7优化软件

转&#xff1a; http://www.codeceo.com/article/android-mvp-artch.html 最近越来越多的人开始谈论架构。我周围的同事和工程师也是如此。尽管我还不是特别深入理解MVP和DDD&#xff0c;但是我们的新项目还是决定通过MVP来构建。 这篇文章是我通过研究和学习各种文章以及专题讨…...

网页设计html代码大全空格/西安seo外包行者seo06

注&#xff1a;该笔记来自于视频Node.JS-黑马程序员 概述 express是高度封装了http的第三方框架。 express官网&#xff1a;http://expressjs.com/ 只需要像安装其他包那样&#xff0c;直接执行npm install express --save命令安装后就可以使用了。 Hello World Hello Wor…...

网站赚钱平台/班级优化大师下载安装

作者&#xff1a;秋时 杨昶 转载须说明出处 4.5 单据流转 4.5.1 单据流转的目的 单据流转主要为了实现业务关系的流转&#xff0c;并记录相互之间的关系。例如从销售订单生成销货单&#xff0c;两张单据之间有对应的关联关系。 4.5.2 单据流转的效果 单据流转时&#x…...