JAVA简介
- JAVA
-java是一种跨平台的、面向对象的程序设计语言,java技术具有卓越的通用性、高效性、平台移植性和安全性. - java体系
-java SE(标准版)
-java EE(企业版)
-java ME(移动版)
JDK简介
- JDK(JAVA Development Kit)时Sun针对JAVA开发者推出的java语言的软件开发工具包.
- JDK时整个java的核心
-包括ljava运行环境
-java工具(如编译、拍错、打包等工具)
-java基础的类库 - JRE(java Runtime Environment,java运行环境),JRE是JDK的子集.
- JRE包括
-java虚拟机(jvm)
-java核心类库和支持文件
-不包含开发工具(JDK)–编译器、调试和其它工具
JAVA Servlet
- Servlet是java扩展web服务器功能的组件规范
- 常见Servlet容器
-IBM Websphere
-Oracle weblogic
-Apache tomcat
-RedHat Jboss
安装部署JDK
- 安装jdk1.8
]# yum -y install java-1.8.0-openjdk
]# yum -y install java-1.8.0-openjdk-headless
- 安装Tomcat
]# tar -xf apache-tomcat-8.0.30.tar.gz
]# mv apache-tomcat-8.0.30 /usr/local/tomcat
]# ls /usr/local/tomcat/
bin/ //主程序目录
lib/ //库文件目录
logs/ //日志目录
temp/ //临时目录
work/ //自动编译目录jsp代码转换Servlet
conf/ //配置文件目录
webapps/ //页面目录
- 启动Tomcat
]# ]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
- 生成测试页面
]# vim /usr/local/tomcat/webapps/ROOT/test.jsp
<html>
<body>
<center>
Now time is:<%=new java.util.Date()%>
</center>
</body>
</html>
- 客户端测试
-firefox http://192.168.4.71:8080
-firefox http://192.168.4.71:8080/test.jsp
Tomcat虚拟主机
- 主配置文件解析
- server.xml配置文件框架
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">
<Service name="Catalina">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
</Service>
</Server>
基于域名的虚拟主机
- 修改server.xml文档,添加host虚拟主机
#vim /usr/local/Tomcat/conf/server.xml
... ...
<Host name="www.a.com" appBase="a" unpackWARS="true"
autoDeploy="true">
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true"
autoDeploy="true">
</Host>
- 修改server.xml文档,给host添加context
# vim /usr/local/tomcat/conf/server.xml
... ...
<Host name="www.a.com" appBase="a" unpackWARS="true"
autoDeploy="true">
<Context path="" docBASE="base" reloadable="true"/>
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true"
autoDeploy="true"> </Host>
//appBase定义基础目录,基础目录下可以有很多项目,默认项目ROOT
//docBase定义首页路径,默认为ROOT
- 修改server.xml文档,给host添加context
# vim /usr/local/tomcat/conf/server.xml
... ...
<Host name="www.a.com" appBase="a" unpackWARS="true"
autoDeploy="true">
<Context path="/text/" docBase="/var/www/html/"/>
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true"
autoDeploy="true"> </Host>
//path指定用户访问的URL,docBase指定页面存储的位置
验证:http://IP:8080/test/
Tomcat工作原理
SSL加密站点
- 生产私钥证书文件
#keytool -genkeypair -alias tomcat-keyalg RSA-keystore
/usr/local/tomcat/keystore - 修改server.xml配置文件
#vim /usr/local/tomcat/conf/server.xml
... ...
<Connector port="8843"
protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150"SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/usr/local/tomcat/keystore" keystorePass="123456"
xlientAuth="false" sslProtocol="TLS"/>
- 客户端测试
#firefox https://localhost:8443
#firefox https://www.a.com:8443
日志
- 虚拟主机创建独立日志文件
# vim /usr/local/tomcat/conf/server.xml
... ...
<Host name="www.a.com" appBase="a" unpackWARS="true"
autoDeploy="true">
<Context path="' docBase"base"/>
<Valve className="org.apache.catalina.valves.AccessLogValve"
prefix="wwwacom_access_log."suffix=".txt"
pattern="common"/>
</Host>
Tomcat集群
- 修改nginx配置
#vim /usr/local/nginx/conf/nginx.conf
http {
upstream toms{
server 192.168.2.100:8080;
server 192.168.2.200:8080;
}
server {
listen 80;
server_name localhost;
location/{
proxy_pass http://toms;
}
}
}