首先:
1.forward与redirect区别
forward:一次请求,地址不变,request作用于传递数据,因为forword容器(tomcat)内跳转,所以只能在本应用使用
redirect:多次请求,地址栏改变,不能使用request作用于传递数据,redirect是浏览器重定向,跨域跳转(比如淘宝付费时,重定向至支付宝,两个应用间跳转) reaponse.sendRedirect(“url”)
两者均属于同步请求,AJAX跨域请求为异步请求
2.Ajax中的跨域请求(JAONP)
跨域:2个不同的域名 或者 相同的域名端口不同 跨域
www.sohu:80 www.sohu:8080 端口不同,服务器不同 (80端口可以默认不写)
跨域存在问题:
本网站中发送的请求 可以被另一个网站接受并处理,但是响应不能到达
解决跨域的问题: $.getJSON();
3.tomcat中域名处理
http://loalhost:8080/ajax/index.jsp
http://192.168.0.1(http://www.sohu.com ) 域名等价于ip
a. 默认80端口不封,80端口可以不用写(如上网址,无端口号),可以在tomcat/conf/server.xml中改成80端口
b. 将项目拷贝到webapps下的ROOT内,则项目名(ajax)可以省略不写(如上网址,无项目名)
c. 设置欢迎首页,首页不用写,在web.xml中配置welcome-file-list
4.在tomcat中配置虚拟主机的方式
a. 在tomcat/conf/service.xml中 加入如下配置一段 配置
//appBase指定应用程序(网站)的基本路径
<Host appBase="F:\virtualhost1" autoDeploy="true" name="site1" unpackWARs="true">
<Context path="" docBase="." debug="0" />
</Host>
b. 打开C:\Windows\System32\drivers\etc 下面的hosts文件 加入127.0.0.1 site1
127.0.0.1 localhost //:有了这一行,所以浏览器输入:http://localhost:8080/ 能进入tomcat ,下一行同理
127.0.0.1 site1
假设在tomcat、wenbapps下的ROOT文件夹下有hello.html 内容写入 hello。
启动tomcat,
在浏览器输入:http://localhost:8080/index.html —–>将显示 :hello 访问的是tomcat下的资源
在浏览器输入:http://site1:8080/index.html ——>将显示 :test 访问的是F:\virtualhost1 下的资源