Web服务器讲解与JavaWeb应用部署(本机,以Tomcat为例)
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6042290.html
在讨论Web系统发布之前,我们先来辨析两个概念:服务器、Web服务器。
通常,我们说的服务器,是一台提供服务的计算机,是硬件概念。这台主机有其IP地址,有服务端口,我们要访问时,就是通过IP地址唯一地访问这台计算机。
而Web服务器,是一个软件概念。Web服务器是专门用于管理Web程序各种资源的一套软件。web服务器安装在服务器上。一个web服务器可以管理一个到多个网站资源。
总而言之,就是:web服务器安装在服务器上,网站们处于web服务器中被管理、运行。
然后,我们来辨析静态内容、动态内容的概念。
静态内容:网站文件的静态内容是指浏览器可以直接解析的内容,比如html,css,JS等。
动态内容:动态内容是指浏览器不可以直接解析的内容,一般需要在web服务器先进行编译、运行,再把运行结果与原文件中的html语句拼接好,发回浏览器进行显示。比如JSP。
明白了这些基本概念之后,我们就可以尝试部署一个web系统(网站)了。
目前,我们一般都是通过购买服务器提供商的web服务器空间来部署网站,当然,当你的企业达到一定程度,也可以自己购买服务器进行部署。
通过购买服务器提供商提供的web服务器空间的话,你需要把你的网站文件上传到分配给你的空间中,然后配置好IP地址或域名与你的网站文件的对应关系。这样,用户们就可以通过域名来访问到这个web服务器上的文件,也就是能够访问你的网站了。
若在自己的服务器/计算机上部署网站,该怎么办呢?
首先,你需要知道本机的IP地址,以供用户名找到这台机子。在CMD命令窗口输入 ipconfig指令,找到IPV4地址,那串形如“192.123.0.125”之类的数字串就是你的IP地址了。
然后,在你的计算机上搭建web服务器。目前我们常用的web服务器有Tomcat、IIS、JBOSS等。安装好后,配置一个端口给它,默认是8080端口。如果有申请到域名的话,在配置文件中把域名配置好。这样用户就可以通过域名访问到你的计算机上的网站文件了。
最后,启动web服务器。用户就可以通过域名/ip地址来访问啦!
下面以Tomcat为例,大概讲解一下其配置与应用根目录:
Tomcat文件夹如下:
点击进入conf文件夹,可以看到:
打开server.xml文件,我们就可以在其中配置该web服务器使用的端口、web服务器对应的域名、web应用所处的根目录等信息了。
可以配置多个Host,name属性是指申请到的域名,默认有一个localhost。appBase是网站的根目录。
应用根目录:
如图,应用根目录下不同的文件夹存放不同的网站。默认有一个ROOT文件夹。网站文件必须处于ROOT或者其他的网站文件中,不能直接位于webapps文件夹下,否则访问不到。因为8080端口默认是对应与webapps文件夹下的ROOT文件夹。所以一般开发时会把文件放在root文件夹中,这样访问时输入地址就可以缺省端口了。但如果是放在ROOT之外的独立文件夹中,则访问时需要指明文件夹、文件名。比如这里我需要访问myblog文件夹下的index.jsp。我需要在浏览器输入:
localhost:8080/myblog/index.jsp
一个web系统的组成:
最基本的有html文件、jsp文件、css样式表文件、图片资源、多媒体资源,以及最重要的WEB-INF配置文件夹。
在WEB-INF文件夹中,存放了该网站资源的基本配置文件、运行过程中使用到的java类的编译文件、以及使用到的包。
Web服务器讲解与JavaWeb应用部署(本机,以Tomcat为例)的更多相关文章
- 高性能Web服务器Nginx的配置与部署研究(13)应用模块之Memcached模块+Proxy_Cache双层缓存模式
通过<高性能Web服务器Nginx的配置与部署研究——(11)应用模块之Memcached模块的两大应用场景>一文,我们知道Nginx从Memcached读取数据的方式,如果命中,那么效率 ...
- 高性能Web服务器Nginx的配置与部署研究(7)核心模块之主模块的非测试常用指令
1. error_log 含义:指定存储错误日志的文件 语法:error_log <file> [debug|info|notice|warn|error|crit] 缺省:${prefi ...
- 高性能Web服务器Nginx的配置与部署研究(1)Nginx简介及入门示例
概述 从这篇博文起,将带领读者们一起领略Nginx的强大. Nginx 是做什么用的?我相信很多朋友都已经使用过,如果你没有,那么你一定知道以下这些名称之一:Apache,Lighttpd,Tomca ...
- 高性能Web服务器Nginx的配置与部署研究(2)Nginx入门级配置与部署及“Hello World”
1. Nginx 程序包 目前最新的开发版本时1.1.12: Linux/Unix:nginx-1.1.12.tar.gz Windows:nginx-1.1.12.zip 我们可以下载稳定版尝试: ...
- 【JAVA WEB教程】jsp环境搭建+部署网站(eclipse+tomcat)【详细+图文】
下载tomcat7.X 下载地址为:http://tomcat.apache.org/download-70.cgi 下载完成之后就开始安装 Next I Agree 选中所有的复选框 ...
- 高性能Web服务器Nginx的配置与部署研究系列(1)-- 入门 hello work
简介: Nginx 是一个基于 BSD-like 协议.开源.高性能.轻量级的HTTP服务器.反向代理服务器以及电子邮件(SMTP.POP3.IMAP)服务器.Nginx 是由一个俄罗斯的名叫“Igo ...
- 高性能Web服务器Nginx的配置与部署研究(11)应用模块之Memcached模块的两大应用场景
一.应用场景1 最近在一个项目中,用到了Nginx的Memcached模块,所以就在这个系列教程中提前把Memcached模块拿出来写了.另外发现最近我的 博客文章频频被很多用采集器的网站拿走,帮我发 ...
- 高性能Web服务器Nginx的配置与部署研究(15)Upstream负载均衡模块
Nginx 的 HttpUpstreamModule 提供对后端(backend)服务器的简单负载均衡.一个最简单的 upstream 写法如下: server backend1.example.co ...
- 高性能Web服务器Nginx的配置与部署研究(9)核心模块之HTTP模块基本常用指令
一.HTTP模块的作用是什么? Nginx的HTTP模块用于控制Nginx的HTTP进程. 二.指令 1. alias 含义:指定location使用的路径,与root类似,但不改变文件的跟路径,仅适 ...
随机推荐
- 多个类定义attr属性重复的问题:Attribute "xxx" has already been defined
有时候做自定义控件时就会遇到命名冲突,改变有冲突的名字自然是最直接有效的方式,但是感觉很傻.我搜了下别人的解决方案,觉得很值得借鉴.就是把重名的属性,独立出来写一下,然后在定义时直接写属性名字即可. ...
- 以绑定的方式来启动service
先说下原理,之前我们的启动service就是用startService来启动的,这是显式启动.启动后我们无法得到service中的数据,也无法知道它执行的状态,如果我们要启动它的activity和它建 ...
- js混淆加密,通过混淆Js代码让别人(很难)无法还原
js混淆加密,通过混淆Js代码让别人(很难)无法还原 使用js的混淆加密,其目的是为了保护我们的前端代码逻辑,对应一些搞技术吃饭的公司来说,为了防止被竞争对手抓取或使用自己的代码,就会考虑如何加密 ...
- jQuery中attr和prop方法的区别说明
jquery中attr和prop的基本区别可以理解为:如果是内置属性,建议用prop,如果是自定义的建议用attr. 例如 <input type=check node=123 id=ck & ...
- 动态SQL(章节摘要)
1,使用动态SQL能够在依赖对象不存在时创建子程序. 2.动态SQL主要利用EXECUTE IMMEDIATE语句运行DML,DDL,DCL等语句操作. 3,假设使用了绑定变量,则必须在EXECUTE ...
- verilog语法实例学习(2)
Verilog中的信号类型 线网类型 线网类型表示一个或多个门或者其它类型的信号源驱动的硬件连线.如果没有驱动源,则线网的默认值为z.verilog中定义的线网类型有以下几种: wire,tr ...
- go语言之进阶篇Ticker的使用
Ticker是一个定时触发的计时器,它会以一个间隔(interval)往channel发送一个事件(当前时间),而channel的接收者可以以固定的时间间隔从channel中读取事件. 1.Ticke ...
- Luban 鲁班 图片压缩 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- mybatis plus 主键生成 Twitter雪花算法 id 及修改id为字符型
mybatis plus配置主键生成策略为2,就是 使用Twitter雪花算法 生成id spring boot中配置为: GlobalConfiguration conf = new GlobalC ...
- Swift编程语言学习1.7——断言
断言 可选能够让你推断值是否存在,你能够在代码中优雅地处理值缺失的情况.然而,在某些情况下,假设值缺失或者值并不满足特定的条件,你的代码可能并不须要继续执行.这时.你能够在你的代码中触发一个断言(as ...