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

外贸平台哪个网站最好移动网站和桌面网站区别

外贸平台哪个网站最好,移动网站和桌面网站区别,产品做网站如何谁来维护价格,卸载西部数码网站管理助手tomcat 1、tomcat tomcat和php一样#xff0c;都是用来处理动态页面的。 tomcat也可以作为web应用服务器#xff0c;开源的。 php .php tomcat .jsp nginx .html tomcat 是用Java代码写的程序#xff0c;运行的是Java的web应用程序。 tomcat的特点和功能#xff1a…tomcat 1、tomcat ·tomcat和php一样都是用来处理动态页面的。 tomcat也可以作为web应用服务器开源的。 php .php tomcat .jsp nginx .html tomcat 是用Java代码写的程序运行的是Java的web应用程序。 tomcat的特点和功能 1、servlet容器执行java servlet服务端的java程序处理客户端的http请求以及响应。 2、jsp容器Javaserver page 这是一种动态页面的技术可以在html的页面里面嵌入Java代码。 3、自身也是一个http的服务器。 4、tomcat是一个轻量级的动态页面的处理程序高并发场景不使用。 优化tomcat自身的优化以及系统的内核优化jvm的优化。 servlet 是java语言中用来开发web应用程序的关键组件。处理http请求生成动态内容以及响应客户端的请求。 处理http请求 生成动态内容 处理Java的业务逻辑 会话管理保持用户的状态信息购物车同步用户登录等等。 也可以转发nginx的动态请求到数据库。 jsp web应用程序的界面这个界面的语言是用Java实现的。 .jsp为结尾的文件 index.jsp 2、tomcat的组件 connector负责对外接受和响应请求它是tomcat于客户端沟通的一个枢纽监听端口接受外界请求。 端口8080 接收到请求之后传递给其他组件进行处理处理完成之后回到connector再响应客户端。 container负责处理业务逻辑engin host contxt wrapper四个功能组成 engine用来管理多个虚拟主机host,一个service只能有一个engine。 host一个host就是一个主机也可以叫站点通过配置host可以添加多个站点。 context 一个context代表一个web应用。 wrapper封装器负责处理最底层的逻辑。 service对外提供外部服务包含connector和container tomcat可以有多个service每个service之间是互相独立的。 3、tomcat目录的作用 bin存放启动和关闭tomcat脚本的文件。startup.sh shutdow.sh conf存放tomcat的主配置文件server.xml主配置文件 context.xml:host的默认配置信息 tomcat-user.xml登录时认证用户和密码的相关信息manager文件必须要赋权修改之后才能打开。 libtomacat运行时需要的jar包。一般不动 logs日志文件catalina.out主日志文件。 temp存放tomcat运行时产生的文件。 webapps部署web应用的目录类似于nginx的html。 4、tomcat服务部署 ---------------------Tomcat 服务部署------------------------- 在部署 Tomcat 之前必须安装好 jdk因为 jdk 是 Tomcat 运行的必要环境。 1.关闭防火墙将安装 Tomcat 所需软件包传到/opt目录下 jdk-8u201-linux-x64.rpm apache-tomcat-9.0.16.tar.gzsystemctl stop firewalld systemctl disable firewalld setenforce 02.安装JDK cd /opt rpm -ivh jdk-8u201-linux-x64.rpm java -version3.设置JDK环境变量 vim /etc/profile.d/java.sh export JAVA_HOME/usr/java/jdk1.8.0_201-amd64 export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar export PATH$JAVA_HOME/bin:$PATH##解释 export JAVA_HOME/usr/java/jdk1.8.0_201-amd64: 这个命令设置了一个名为JAVA_HOME的环境变量它指向Java JDK的安装路径。 这对于告诉系统和其他应用程序Java的安装位置非常重要。你需要将路径替换为你实际安装Java的路径。export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar: 这个命令设置了一个名为CLASSPATH的环境变量它用于指定Java类的搜索路径。 在这个命令中.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 表示当前目录. 以及Java工具库tools.jar和Java远程调试库dt.jar的路径。这些库通常包含一些Java开发所需的类。export PATH$JAVA_HOME/bin:$PATH: 这个命令将Java可执行文件的路径添加到系统的PATH环境变量中。 这使得你可以在终端中直接运行Java工具而不需要输入完整的路径。 这将Java的bin目录添加到了PATH中使得java、javac等命令可以直接运行。source /etc/profile.d/java.sh java -version----------------------------------------------------------------------------------------------------------CLASSPATH编译、运行Java程序时JRE会去该变量指定的路径中搜索所需的类.class文件。 dt.jar是关于运行环境的类库主要是可视化的 swing 的包。 tools.jar主要是一些jdk工具的类库包括javac、java、javapjdk自带的一个反编译工具、javadoc等。 JDK (Java Development Kit)JDK是Java开发工具包它是用于开发Java应用程序的软件包。 JDK包括了编译器javac、调试器、各种工具、Java标准类库Java API、以及Java文档等。 JDK是开发者用来创建、编译和运行Java应用程序的重要组件。JRE (Java Runtime Environment)JRE是Java运行时环境它是用于执行Java应用程序的部分。 JRE包括了Java虚拟机JVM以及Java类库Java API这使得用户能够在计算机上运行已编译的Java程序 而不需要进行开发。JRE是终端用户需要安装的部分以便能够运行Java应用程序。JVM (Java Virtual Machine)JVM是Java虚拟机它是Java应用程序在计算机上运行的核心组件。 JVM负责将编译后的Java字节码.class文件解释或编译成本地机器码以便计算机能够执行它。JVM提供了内存管理、垃圾回收、线程管理等功能以确保Java程序在不同平台上具有相似的行为。首先使用文本工具编写java源代码比如 Hello.java 在命令行中输入命令javac 5、tomacat安装 1、安装启动Tomcat 安装启动Tomcat cd /opt tar zxvf apache-tomcat-9.0.16.tar.gz mv apache-tomcat-9.0.16 /usr/local/tomcat ##启动tomcat ## #后台启动 /usr/local/tomcat/bin/startup.sh 或 /usr/local/tomcat/bin/catalina.sh start#前台启动 /usr/local/tomcat/bin/catalina.sh run netstat -natp | grep 8080浏览器访问Tomcat的默认主页 http://192.168.233.21:80805.优化tomcat启动速度 第一次启动tomcat可能会发现 Tomcat 启动很慢默认情况下可能会需要几十秒可以修改jdk参数进行改。 vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security --117行--修改securerandom.sourcefile:/dev/urandom/dev/urandom是/dev/random的非阻塞版本/dev/random的 random pool 依赖于系统中断因此在系统的中断数不足时 /dev/random 设备会一直封锁尝试读取的进程就会进入等待状态直到系统的中断数充分够用 /dev/random设备可以保证数据的随机性。 /dev/urandom不依赖系统的中断也就不会造成进程忙等待 但是数据的随机性也不高所以该随机数的安全性理论上不高。如果应用对安全性要求很高那么应该使用/dev/random。------主要目录说明---------------------------------------------------------------------------------------------- ●bin:存放启动和关闭Tomcat的脚本文件比较常用的是 catalina.sh、startup.sh、shutdown.sh三个文件 ●conf存放Tomcat 服务器的各种配置文件比较常用的是 server.xml、context.xml、tomcat-users.xml、web.xml 四个文件。 ① server.xml: Tomcat的主配置文件包含ServiceConnectorEngineRealmValve,Hosts主组件的相关配置信息; ② context.xml:所有host的默认配置信息; ③ tomcat-user.xml:Realm认证时用到的相关角色、用户和密码等信息Tomcat自带的manager默认情况下会用到此文件在Tomcat中添加/删除用户为用户指|定角色等将通过编辑此文件实现; ④ web.xml:遵循Servlet规范标准的配置文件用于配置servlet并为所有的web应用程序提供包括MIME映射等默认配置信息; ●lib存放Tomcat运行需要的库文件的jar 包一般不作任何改动除非连接第三方服务比如 redis那就需要添加相对应的jar 包 ●logs存放 Tomcat 执行时的日志 ●temp存放 Tomcat 运行时产生的文件 ●webapps存放 Tomcat 默认的 Web 应用部署目录 ●workTomcat工作日录存放jsp编译后产生的class文件一般清除Tomcat缓存的时候会使用到 ●src:存放Tomcat 的源代码●doc:存放Tomcat文档 ----------------------------------------------------------------------------------------------------------查看manager文件 cd /usr/local/tomcat/webapps/manager/META-INF vim context.xmlContext antiResourceLockingfalse privilegedtrue Valve classNameorg.apache.catalina.valves.RemoteAddrValveallow.* / #允许所有主机访问。cd /usr/local/tomcat/conf##设置登录页面 在conf,tomcat-users.xml中添加账户密码 role rolenamemanager-gui/ user usernametomcat passwordtomcat rolesmanager-gui/cd .. cd bin [roottest4 bin]# ./shutdown.sh [roottest4 bin]# ./startup.sh [roottest4 bin]# ss -antp | grep 80806、配置tomcat的虚拟主机 ---------------------Tomcat 虚拟主机配置------------------------- 很多时候公司会有多个项目需要运行一般不会是在一台服务器上运行多个 Tomcat 服务这样会消耗太多的系统资源。此时 就需要使用到 Tomcat 虚拟主机。 例如现在新增两个域名 www.kgc.com 和 www.benet.com 希望通过这两个域名访问到不同的项目内容。1.创建 kgc 和 benet 项目目录和文件 mkdir /usr/local/tomcat/webapps/kgc mkdir /usr/local/tomcat/webapps/benet echo This is kgc page\! /usr/local/tomcat/webapps/kgc/index.jsp echo This is benet page\! /usr/local/tomcat/webapps/benet/index.jsp2.修改 Tomcat 主配置文件 server.xml ##等于是nginx.conf vim /usr/local/tomcat/conf/server.xml --165行前--插入 Host namewww.kgc.com appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/kgc path reloadabletrue / /Host Host namewww.benet.com appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/benet path reloadabletrue / /Host ##添加网站 ----------------------------------------------------------------------------------------------------------Host name主机名 appBaseTomcat程序工作目录即存放web应用程序的目录相对路径为webapps绝对路径为 /usr/local/tomcat/webapps unpackWARs在启用此webapps时是否对WAR格式的归档文件先进行展开默认为true autoDeploy在Tomcat处于运行状态时放置于appBase目录中的应用程序文件是否自动进行deploy默认为true xmlValidation是否验证xml文件执行有效性检验的标志 xmlNamespaceAware是否启用xml命名空间设置该值与xmlValidation为true表示对web.xml文件执行有效性检验docBase相应的Web应用程序的存放位置也可以使用相对路径起始路径为此Context所属Host中appBase定义的路径 path相对于Web服务器根路径而言的URI如果为空“”则表示为此webapp的根路径 / reloadable是否允许重新加载此context相关的Web应用程序的类默认为false首先使用文本工具编写java源代码比如 Hello.java 在命令行中输入命令javac Hello.java对源代码进行编译生成 class 字节码文件 编译完成后如果没有报错信息输入命令java Hello运行 class 字节码文件由 JVM 对字节码进行解释和运行 打印 “Hello World”。vim Hello.javapublic class Hello { public static void main(String[] args){System.out.println(Hello world!);} }javac Hello.java java Hellopublic: 这是一个访问修饰符表示类是公共的可以从其他地方访问。 class: 关键字用于定义一个类。 Hello: 这是类的名称这里是一个叫做 Hello 的类。public static void main(String[] args){ public: 访问修饰符表示这个方法是公共的可以从其他地方访问。 static: 静态修饰符表示这个方法属于类而不是实例可以通过类名直接调用。 void: 这是方法的返回类型void 表示方法没有返回值。 main: 这是方法的名称是程序的入口点当程序运行时会从这里开始执行。 (String[] args): 这是方法的参数列表args 是一个字符串数组可以在命令行传递参数给程序。System.out.println(Hello world!); System.out: System 是一个类out 是这个类的一个静态成员它代表标准输出流。 println: 这是输出方法的名称它会在控制台输出一行内容。 Hello world!: 这是要输出的内容是一个字符串。 7、tomcat的优化 tomcat自身的优化 内核优化 jvm优化 tomcat的并发处理能力不强大项目不使用tomcat作为转发动态的中间件k8s集群pythonrubby小项目会使用内部使用。动静分离。 7.1、优化tomcat的启动速度 file:/dev/urandom—非阻塞的版本不依赖系统的终端进程忙也不会进入等待状态。所以处理速度相对比较快。 如果对应用的安全性要求比较高/dev/random 默认配置不适合生成环境可能频繁的出现假死需要不停的重启。 根据生产环境的实际情况自行测试。 port 8080 http 8443 https 443 接受客户端https的请求 Connector port8080 protocolHTTP/1.170 connectionTimeout2000071 redirectPort844372 maxThreads50073 /maxThreadstomcat使用线程来处理接收请求的个数。tomcat最多可以创建多少个线程。默认200个5001000。minSpareThreads最小空闲数线程就是有没有使用最少开启线程数tomcat开启之后没人使用也会有进程待命默认值10。maxSpareThreads:最大空闲数线程一旦线程总数超过这个值tomcat就会关闭不再需要的线程默认就是-1不限制一般不设置。connectionTimeout20000网络连接超时时间单位是亳秒设置为0永不超时。默认即可200000ms。enableLookups是否支持反向解析truefalse。提高处理速度。disableUplaodTimeout上传时是否使用超时时间机制10strue和false。true关闭false开启。connectionUplaodTimeout:上传的超时时间。先得打开超时限制再设置时间。 acceptCount当所有可用的请求的线程都被使用时可用接入请求的最大队列长度超过了这个数字的请求将不予处理直接丢弃默认100个compression是否对响应数据进行压缩on开启off就是关闭。开启压缩之后可以有效减少页面的大小文本无效。图片音频视频一般可用减少1/3节省带宽默认off。compression“on”compressionMinSize“”:表示响应压缩的最小值只有响应报文大于这个值才会压缩。如果开启了压缩默认值时2048。noCompressionUserAgents浏览器名称对于这些浏览器不启用压缩。compressableMimeTypetext/plain,video/mp4压缩类型指定对哪些类型的文件进行压缩。 7.2、常用的页面类型 文本类型text/plaintext/htmltext/csstext/javascript图片类型image/jpgimage/jpegimg/gif音频audio/oggwavmpeg视频video/mp4webmrmvbquicktime。应用程序application/pdf、json、xml。 7.3、内核优化 系统安全的优化补齐。 内核优化的配置文件 1、打开文件数的限制系统初始化的第一步要做的事情--------vim /etc/security/limits.conf。 2、内核参数文件---------vim /etc/sysctl.conf sysctl -a sysctl -c net.ipv4.ip_forward0/1 禁用或者开启数据包的转发功能要做路由器必须打开0是关1是开。net.ipv4.tcp_max_tw_buckets2000 允许timewait的最大数量2000。net.ipv4.tcp_sack1启用有选择的应答提高tcp的处理性能。net.core.netdev_max_backlog262144 (字节) 网络接收数据包队列的最大的大小。vm.swappiness0 ,关闭内存的交换行为不使用交换分区k8s默认就不能使用交换分区否则会报错。net.ipv4.tcp_max_orphans:系统允许的最大的tcp连接数量。net.ipv4.ip_local_port_range1024 650001024-65000设定系统的端口范围。net.ipv4.tcp_fin_timeout10 设置tcp关闭连接的超时时间。net.ipv4.tcp_keepalive_time:设置tcp的keepalive包探测包的发送频率以检测连接状态。记住上面的下面了解 kernel.sysrq 0: 禁用了内核的SysRq功能SysRq允许在系统崩溃或出现问题时执行一些调试操作。kernel.core_uses_pid 1: 设置核心转储文件名中包含进程ID有助于标识是哪个进程导致了核心转储。kernel.msgmnb 和 kernel.msgmax: 增加IPC消息队列的默认和最大大小用于进程间通信。kernel.shmmax 和 kernel.shmall: 调整共享内存的最大大小和分配页面数。net.ipv4.ip_forward 0: 禁用IP数据包的转发功能通常用于不充当路由器的系统。net.ipv4.conf.default.rp_filter 和 net.ipv4.conf.all.rp_filter: 控制反向路径过滤提高网络安全性。net.ipv4.icmp_echo_ignore_all: 允许或禁止系统响应ping请求。net.ipv4.icmp_echo_ignore_broadcasts: 禁止系统对广播和多播地址的ICMP回显和时间戳请求作出响应。net.ipv4.conf.default.accept_source_route: 不接受源路由增加网络安全性。net.ipv4.tcp_syncookies 1: 启用SYN Cookies保护系统免受TCP SYN 攻击。net.ipv4.tcp_max_tw_buckets 6000: 设置允许的TIME_WAIT套接字最大数量避免服务器性能下降。net.ipv4.tcp_sack 1: 启用有选择的应答SACK来提高TCP性能。net.ipv4.tcp_window_scaling 1: 启用TCP窗口缩放功能允许大窗口的TCP传输。net.ipv4.tcp_rmem, net.ipv4.tcp_wmem: 调整TCP套接字读取和写入缓冲区大小。net.ipv4.tcp_mem: 设置TCP缓冲区的最小、默认和最大值。net.core.wmem_default, net.core.rmem_default, net.core.rmem_max, net.core.wmem_max: 调整网络核心 缓冲区的大小。net.core.netdev_max_backlog: 控制网络接口接收数据包的排队队列大小。net.ipv4.tcp_max_orphans: 设置系统允许的孤立TCP连接最大数量。net.ipv4.tcp_max_syn_backlog: 控制系统允许的三次握手队列长度。net.ipv4.tcp_synack_retries 和 net.ipv4.tcp_syn_retries: 设置SYN-ACK和SYN请求的重试次数。net.ipv4.tcp_tw_recycle 和 net.ipv4.tcp_tw_reuse: 启用TIME_WAIT套接字快速回收和重用。net.ipv4.tcp_fin_timeout: 设置TCP连接FIN关闭连接的超时时间。net.ipv4.tcp_keepalive_time: 设置TCP keepalive探测包发送频率以检测连接状态。net.ipv4.ip_local_port_range: 设置本地端口范围用于分配本地应用程序端口。net.ipv6.conf.all.disable_ipv6 和 net.ipv6.conf.default.disable_ipv6: 禁用IPv6。net.netfilter.nf_conntrack_max 和其他 net.netfilter.nf_conntrack_*: 控制连接跟踪和防火墙相关设置。net.nf_conntrack_max: 设置最大连接跟踪项数。vm.overcommit_memory 0: 控制内存超额分配策略避免OOM killer杀掉进程。vm.swappiness 0: 设置内存交换行为降低内存交换。fs.file-max 999999: 设置进程可以同时打开的最大文件句柄数。net.ipv4.tcp_max_tw_buckets 6000: 设置操作系统允许的TIME_WAIT套接字最大数量。net.ipv4.ip_local_port_range 1024 65000: 设置系统允许的本地端口范围。net.ipv4.tcp_tw_recycle 1: 启用TIME_WAIT套接字快速回收。net.ipv4.tcp_tw_reuse 1: 允许TIME-WAIT套接字重用。net.ipv4.tcp_syncookies 1: 启用SYN Cookies防止TCP SYN 攻击。net.core.somaxconn 40960: 设置最大监听队列长度用于控制最大并发连接数。net.core.netdev_max_backlog 262144: 设置每个网络接口接收数据包队列的最大大小。net.ipv4.tcp_max_syn_backlog 262144: 设置接受SYN请求队列的最大长度。net.ipv4.tcp_rmem, net.ipv4.tcp_wmem: 设置TCP套接字读取和写入缓冲区的最小、默认和最大大小。net.core.rmem_default, net.core.wmem_default, net.core.rmem_max, net.core.wmem_max: 设置内核套接字接收和 发送缓冲区大小。net.ipv4.tcp_syncookies 1: 设置启用SYN Cookies用于解决TCP SYN 攻击。7.4、jvm的优化 JAVA_OPTS$JAVA_OPTS -server -Xms2048m -Xmx2048m -Xmn768m -XX:ParallelGCThreads2 -XX:PermSize1024m -XX:MaxPermSize1024m -Djava.awt.headlesstrue -XX:DisableExplicitGC cygwinfalse解释面试会问 -Xms2048mjava初始化堆的大小分配jvm的最小内存cpu的性能比较高可以分配的高一点。-Xmx2048mjava堆的最大值也就是jvm的最大内存取决于物理内存的大小官方建议设置成和xms一样的值设置成物理内存的一半-Xmn768m新生代内存的大小官方推荐设置成jvm内存最大值的3/8.java自带垃圾回收机制java进行垃圾回收之后不需要重新计算堆区的大小。堆区新生代中生代老年代。每生成有一个新的对象对象占用的内存空间就是新生代空间。垃圾回收对堆区当中的资源进行回收之后新生代没有被回收就会变成中生代中生代的就会转移到老年代。整个jvm堆的大小新生代中生代老生代永久代系统自带的-XX:ParallelGCThreads2配置并行收集器的线程数同时有多少个线程数一起进行来及时回收配置成cpu的一半。-XX:PermSize1024m设置非堆内存的初始值持久代内存的大小默认是物理内存的1/4建议设置成整个jvm内存的一半非堆内存是不会被Java的垃圾回收机制处理的。-XX:MaxPermSize1024m 非堆内存的最大值和初始值一致即可。-Djava.awt.headlesstrue防止在linux访问的情况下web页面的图片不能打开。-XX:DisableExplicitGC老年代的收集算法缩短垃圾回收机制的回收时间。PS Eden Space 堆内存 创建一个新对象都在堆内存当中。PS Old Gen 堆内存长期存活的对象永生代。PS Survivor space 堆内存PS Eden space和Ps Old Gen之间的存活对象中生代。Code Cache 非堆内存存储以及编译的代码。Compressed Class Space 非对内存存储以及压缩过的类定义。Metaspace 非堆内存存储元数据的区域ajp-nio-8009ajp-nio连接器的类型ajp是协议nio异步非阻塞的通信方式。ajp协议tomcat服务器和web服务器之间进行连接的协议可以提供负载均衡和高效转发。nio可以提高并发的处理能力。8009就是ajp的端口 8、tomcat和nginx实现动静分离 访问nginx就是静态页面nginx代理实现index.jsp可以访问tomcat的动态页面。 课后实验 思路 nginx1:192.168.168.10纯代理nginx2、3192.168.168.20代理静态页面192.168.168.30代理静态页面tomcat:192.168.168.40动态页面192.168.168.90动态页面nginx1、2、3tomcat4、5配置关闭防火墙安全机制 nginx1配置 vim /usr/local/nginx/conf/nginx.conf #keepalive_timeout 0;keepalive_timeout 65;#gzip on; upstream nginx {server 192.168.168.20 weight2;server 192.168.168.30 weight1;} server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location ~ .*\.(html|jsp)$ {proxy_pass http://nginx;}nginx2配置 vim /usr/local/nginx/html/index.html this is test2 vim /usr/local/nginx/conf/nginx.conf #keepalive_timeout 0;keepalive_timeout 65;#gzip on; upstream tomcat {server 192.168.168.40:8080 weight2;server 192.168.168.90:8080 weight1;}server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location ~ .*\.jsp$ {proxy_pass http://tomcat;proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}nginx3配置 vim /usr/local/nginx/html/index.html this is test3 vim /usr/local/nginx/conf/nginx.conf #keepalive_timeout 0;keepalive_timeout 65;#gzip on; upstream tomcat {server 192.168.168.40:8080 weight2;server 192.168.168.90:8080 weight1;} server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location ~ .*\.jsp$ {proxy_pass http://tomcat;proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}tomcat4 配置文件设置动态网页打开页面位置 vim /usr/local/tomcat/conf/server.xml Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/test4 path reloadabletrue /动态页面内容设置 mkdir -p /usr/local/tomcat/webapps/test4 vim /usr/local/tomcat/webapps/test5/index.jsp % page languagejava importjava.util.* pageEncodingUTF-8% htmlhead titleJSP test2 page/title /headbody % out.println(动态页面 2,http://www.test2.com);% /body /htmltomcat5 配置文件设置动态网页打开页面位置 vim /usr/local/tomcat/conf/server.xml Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/test5 path reloadabletrue /动态页面内容设置 mkdir -p /usr/local/tomcat/webapps/test5 vim /usr/local/tomcat/webapps/test5/index.jsp % page languagejava importjava.util.* pageEncodingUTF-8% htmlhead titleJSP test2 page/title /headbody % out.println(动态页面 2,http://www.test2.com);% /body /html
http://www.w-s-a.com/news/656977/

相关文章:

  • 网站建设重要性黄岐建网站
  • 做网站电销《电子商务网站建设》精品课
  • 地方商城网站海外网站推广方法
  • 乐山 网站建设安阳给商家做网站推广
  • 网站空间一般多大邢台网站建设有哪些
  • h5网站开发工具有哪些wordpress清空post表
  • 公司开网站干嘛怎么制作一个免费的网站模板
  • 群晖wordpress搭建网站网站建设及管理
  • 中山企业网站建设公司抖音代运营合作模式
  • 南通营销网站开发做网站页面多少钱
  • 桂林生活网官方网站云主机和云电脑的区别
  • 内部网络网站怎么做vue做单页面网站
  • 如何建立网站教程wordpress粘帖图片
  • 广东网站备案要多久网站开发 pdf 文字版
  • 学校网站方案帮别人做钓鱼网站吗
  • 如何加强网站建设和信息宣传wordpress 搜索提示
  • 灰色网站怎么做php yaf 网站开发框架
  • 浙江建设网站首页提供做网站公司有哪些
  • 建公司网站报价公司seo是什么级别
  • 可信赖的武进网站建设中山网站建设方案
  • 网站设计方面有什么公司运动鞋网站建设目的
  • 学校门户网站流程建设方案找人做网站 多少钱
  • 网站域名更换相应内容网站策划 要求
  • 百盛联合建设集团网站开发网站的步骤
  • php做网站评价网络公司经营范围可以加技
  • 网站积分的作用保定专业网站建设
  • 莆田做网站公司电话如何提升网站访问速度
  • 网站开发流程步骤 口袋网页访问wordpress
  • 湘潭做网站的公司自助建站教程
  • 做网站推广和头条推广wordpress 验证密码错误