Web服务器常用配置
1.Web系统采用B/S结构通信的:Browser --- Server
1)浏览器向服务器发送访问目标资源请求(请求)
2)服务器根据请求的目标资源路径,在服务器端进行查找(请求查找)
3)服务器会将查找结果返回给客户端浏览器(响应)
通信结构图:
2.什么是Web服务器?
包括硬件环境和软件环境,在网络中安装web服务器软件的计算机
3.Tomcat服务器安装和配置
1)在Apache官网上下载tomcat服务器
*一般采用zip格式的(可直接解压使用)
2)解压缩tomcat
*不要使用含有空格和中文目录的文件夹
3)启动tomcat之前,配置JAVA_HOME环境变量 ---- 配置JDK安装路径
*注意JAVA_HOME使用下划线
4)启动tomcat服务器
双击bin/startup.bat(如果使用linux双击bin/startup.sh)
输入http://localhost:8080/ 访问tomcat网站主页
5)因为网站通过HTTP协议访问,HTTP协议默认端口80 ---- 修改tomcat服务器启动端口80
修改conf/server.xml
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> 将8080修改为80
访问localhost:80端口 ----- 省略端口写法 http://localhost访问站点
4.tomcat启动问题
1)窗口一闪然后消失 ----- 编辑startup.bat,在文件末尾加入pause指令,再次运行,读取错误原因,根据原因解决
*JAVA_HOME路径必须是JDK不可以是JRE
2)端口占用问题
发现端口被占用后,通过cmd命令行,查看占用端口进程 ---- netstat –ano
在任务管理器关闭该进程
3)CATALINA_HOME环境变量
指定tomcat安装位置(该环境变量可以不配置) ---- 如果配置出错,tomcat将无法启动
5.各种版本对应问题
Tomcat版本 Servlet/JSP版本 JavaEE版本 运行环境
4.1 2.3/1.2 1.3 JDK1.3
5.5 2.4/2.0 1.4 JDK1.4
6.0 2.5/2.1 5.0 JDK5.0
7.0 3.0/2.2 6.0 JDK6.0
Tomcat 支持Servlet和JSP规范,Servlet技术属于JavaEE规范
* 随着javaEE 版本提升 -- Servlet版本提升 --- 运行Servlet环境Tomcat版本提升
* tomcat运行需要JDK 环境版本
如果编写 JavaEE5.0工程 需要哪个版本tomcat可以运行? 6.0 7.0
6.Tomcat目录结构
bin --- 存放tomcat启动关闭程序
conf --- 存放tomcat配置文件
lib --- tomcat运行需要jar包
logs --- tomcat日志文件
webapps --- 网站发布目录(所有网站可以发布到该目录)
work --- 存放工程运行时,产生数据文件(JSP翻译Servlet、Session持久化数据)
7.网站的标准目录结构
站点根目录
------- 静态web资源、jsp
------- WEB-INF目录
------- classes目录 (保存,class文件)
-------- lib 目录 (当前网站需要jar包)
-------- web.xml (网站配置文件)
* WEB-INF目录不是必须的,没有java动态程序代码, 可以没有WEB-INF 目录
* WEB-INF目录下资源不能被浏览器直接访问
8.网站开发好后,如果想让网站被外界访问,需要将网站发布到 web服务器tomcat上 (虚拟目录映射)
Tomcat发布网站三种方式
原理:
配置<Context>元素
1)配置tomcat/conf/server.xml
在<Host name=”localhost”>内部添加<Context>元素
<Context path="/aa" docBase="C:\AA" /> ---- 为网站配置虚拟目录 /aa ------映射到 c:\AA目录
*修改server.xml 重启tomcat
2)$CATALINA_HOME/conf/[enginename]/[hostname]/xxx.xml
tomcat/conf/Catalina/localhost/xxx.xml
在conf下新建Catalina
在Catalina下新建 localhost
在localhost下 新建 bb.xml
<Context docBase="C:\BB" /> --- 为什么不需要写path --- 虚拟目录就是文件名bb ,path默认/bb
*添加bb.xml,不用重启tomcat
*推荐第二种写法(不需要重启服务器,而且出错不会影响其它工程运行),尽量不要使用第一种
3)将网站复制到tomcat/webapps
*不用重启tomcat
*tomcat会根据文件夹名称,自动生成虚拟路径
9.虚拟目录?
当浏览器访问网站采用访问路径 /aa /bb /abc ----- 这些路径不一定是服务器真实存在目录,只是浏览器在访问这些路径时,映射到指定网站跟目录
10.WAR包制作?
先用压缩软件将网站制作xx.zip --- 重命名 xx.wat ---- 复制war到tomcat/webapps
11. Tomcat Manager 使用 (程序员管理已经发布到tomcat网站)
*conf/tomcat-users.xml 加入
<role rolename="manager"/>
<user username="tomcat" password="s3cret" roles="manager"/>
* 重启服务器
* 这个功能默认不要开启 (安全问题)
12.域名解析完整过程图:
在tomcat内部同时 架设多个网站 --- 百度网站、谷歌网站
* 虚拟主机技术 ---- 在tomcat中配置 <Host> 元素
1)搭建tomcat中网站 --- baidu
2)在c盘 新建虚拟主机目录 baidu , 在虚拟主机目录中新建网站根目录 main , 将百度网站复制main 目录中
3)在tomcat中新建
<Host> Host name="www.baidu.com" appBase="C:\baidu" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> </Host>
* 重启tomcat
4)修改本机hosts文件
* win7 系统 ,将hosts文件复制到桌面修改,改后复制回去
192.168.1.145 www.baidu.com
5)将c:\baidu\main 网站根目录 配置为缺省虚拟目录
<Context path="" docBase="main" />
----- 配置缺省虚拟目录 /main 省略
http://www.baidu.com/baidu.htm ---- 访问本机百度
6)将main目录 baidu.htm 配置 网站欢迎页面
新建WEB-INF目录 下新建web.xml
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <welcome-file-list> <welcome-file>baidu.htm</welcome-file> </welcome-file-list> </web-app>
hosts应用
1、限制用户上网 ,网站禁止访问
2、软件破解
13.缺省虚似主机 DefaultHost
<Engine name="Catalina" defaultHost="localhost"> ----- 一个tomcat中可以配置多台虚拟主机,但是只有一台虚拟主机。客户端可以直接通过ip访问
http://www.baidu.com ---- 客户端通过域名访问
http://192.168.1.145 ---- 通过ip访问
只有缺省虚拟主机可以通过ip访问
14. MyEclipse 整合 tomcat 进行 web 程序开发
1)配置myeclipse 内部tomcat 插件
配置tomcat6 在 window - preferences -- tomcat6
检查JDK 版本是否符合
Launch 默认采用 debug model
2)将tomcat插件设置为enable 浏览tomcat目录后 配置ok
3)在MyEclipse中通过插件 tomcat6 --- start 实际上 运行tomcat/bin/startup.bat
4)在console窗口 查看tomcat日志
* tomcat6 --- stop server 正常关闭tomcat 调用 tomcat/bin/shutdown.bat
* 如果直接点击 myeclipse console 窗口 红色按钮 --- 强行停止tomcat
应用:
在myeclipse中编写一个web工程
1)创建web project
context root url 默认工程名
Javaee 规范版本
* 在使用javaee5 规范版本时,默认支持jstl技术
2)新建html 将html编辑器 设置 html editor
window -- preference ---- general ---- editor --- File Associations
3)发布工程到tomcat
原理:将当前web工程复制tomcat/webapps
* 修改 发布虚拟目录名称 --- 右键工程属性 --- myeclipse ---web ----修改Web Context-root