温故知新
首先要清楚一个概念:
转发是在服务器内部转发,浏览器与服务器进行一次交互,页面url不变.(一次交互即:浏览器发起一次请求,服务器一次响应)
重定向是在浏览器端进行,服务器与浏览器进行两次交互,页面url改变(两次交互即:浏览器发起两次请求,服务器两响应)
相对路径:
转发: 会造成相对路径失效.因为在服务器内部进行一次转发以后当前浏览器的url所在的html与服务器内部文件所在的html文件位置不为同一位置.
因此会造成转发路径失效.(简单的说就是当前页面的url和服务器内部的文件所在的路径不对造成的.)
重定向:不会造成相对路径失效
绝对路径:
转发: 不会造成绝对路径失效.
重定向: 会造成绝对路径失效.
重定向为什么绝对路径会失效?
因为服务器和浏览器对绝对路径开始的位置不一致造成.
浏览器解析: http://localhost:8080
服务器解析: http://localhost:8080/项目名
解决:
在使用相对路径的前提下,在页面请求头添加href=“http://localhot:8080”