明天就回学校去学习啦,但是我进度实在太可怜了,在回去之前把第四天的内容看完,立一个flag:四月一日之前看到day20!
day04的内容比较基础,主要就是讲tomcat的使用,以及配置文件的操作。老方在讲tomcat之前,使用socket来创建了一个本地服务器,socket这方面我本身不是很熟悉,现在写一个试试,练习一下!在C盘根目录创建一个名为aa的文件夹,在文件夹中创建一个名为1.html的文件,在同一个文件夹下创建一个Server.java的文件,代码如下:
import java.net.*;
import java.io.*;
public class Server{
public static void main(String args[]) throws Exception{
ServerSocket service = new ServerSocket(19999);//绑定了19999端口
Socket sock = service.accept();
OutputStream out = sock.getOutputStream();
BufferedReader br = new BufferedReader(new FileReader("c:\\aa\\1.html"));
String line = null;
while((line=br.readLine())!=null){
out.write(line.getBytes());
}
out.close();
br.close();
sock.close();
service.close();
}
}
接下来讲了tomcat 中conf文件夹中的server.xml配置文件,比如说端口配置,路径映射之类,没啥难的。下图为tomcat文件结构:
第三篇着重讲了host的配置,延伸讲了dns解析,画了一个IE交互图。
第四篇讲了网页加密,加密过程很简单:
加密会话:
1.使用如下命令生成服务器证书
keytool -genkey -alias tomcat -keyalg RSA
2.在server.xml文件中配置加密连接器,并指定加密连接器从哪个密钥库中获取数字证书
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="conf\.keystore" keystorePass="123456"/>
3.使用浏览器访问:https://localhost:8443(来自传智播客笔记)
最后就讲了如何在tomcat中管理应用:
//在tomcat-user中添加如下代码就OK <role rolename="admin-gui"/> <role rolename="manager-gui"> <user username="tomcat" password="s3cret" roles="admin-gui,manager-gui"/>
1.请求头:
accept:浏览器通过这个头告诉服务器,它所支持的数据类型
Accept-Charset: 浏览器通过这个头告诉服务器,它支持哪种字符集
Accept-Encoding:浏览器通过这个头告诉服务器,支持的压缩格式
Accept-Language:浏览器通过这个头告诉服务器,它的语言环境
Host:浏览器通过这个头告诉服务器,想访问哪台主机
If-Modified-Since: 浏览器通过这个头告诉服务器,缓存数据的时间
Referer:浏览器通过这个头告诉服务器,客户机是哪个页面来的 防盗链
Connection:浏览器通过这个头告诉服务器,请求完后是断开链接还是何持链接
响应头
Location: 服务器通过这个头,来告诉浏览器跳到哪里
Server:服务器通过这个头,告诉浏览器服务器的型号
Content-Encoding:服务器通过这个头,告诉浏览器,数据的压缩格式
Content-Length: 服务器通过这个头,告诉浏览器回送数据的长度
Content-Language: 服务器通过这个头,告诉浏览器语言环境
Content-Type:服务器通过这个头,告诉浏览器回送数据的类型
Refresh:服务器通过这个头,告诉浏览器定时刷新
Content-Disposition: 服务器通过这个头,告诉浏览器以下载方式打数据
Transfer-Encoding:服务器通过这个头,告诉浏览器数据是以分块方式回送的
2.post方式,post方式对参数的长度没有限制,get方式参数仅限1K
3.状态码:
100~199:表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程
200~299:表示成功就收请求并已完成整个处理过程,常用200
300~399:为完成请求,客户需进行进一步细化请求。例如请求的资源已经移动到一个新地址,常用302.307和304(讲这一段的时候提到了张孝祥老师的一个笑话,借钱没钱,问别人要!怀念老张)
400~499:客户端的请求有错误,常用404
500~599:服务器端出现错误,常用500
4.禁止缓存的三个头
Cache-Control : no-cache
Expires: -1 值是日期类型(setDateHeader())
Pragma : no-cache
建议全部设置!