16.3.5 页面重定向
如果用户经常访问某个网站的网页时,他很可能会把页面的URL添加到收藏夹中,在每次访问网站的时候可以直接点击收藏夹中的记录访问。但是如果网站进行了目录结构的更新后,用户再使用原来的URL访问时就会出现“404 页面无法找到”的错误,为了方便用户能够继续使用原来的URL进行访问,这时就要使用页面重定向。
1.页面重定向命令说明
Apache提供了Redirect命令用于配置页面重定向,其命令格式为:
Redirect [HTTP代码] 用户请求的URL [重定向后的URL]
其中常见的HTTP代码以及说明如表16.2所示。
表16.2 HTTP代码说明
HTTP代码 | 说 明 |
200 | 访问成功 |
301 | 页面已移动,请求的数据具有新的位置且更改是永久的,用户可以记住新的URL,以便日后直接使用新的URL进行访问 |
302 | 页面已找到,但请求的数据临时具有不同的URL |
303 | 页面已经被替换,用户应该记住新的URL |
404 | 页面不存在,服务器找不到给定的资源 |
2.页面重定向配置
假设网站有一个/doc目录,现在管理员要对网站的目录结构进行整理,并把/doc目录移动到/old-doc目录下。如果用户还是用原来的URL访问/doc,将会得到404的错误,如图16.21所示。为解决这个问题,需要/doc配置页面重定向,具体过程如下所述。
图16.21 无法访问
(1)打开httpd.conf配置文件。
(2)在配置文件中添加如下内容:
#指定当用户访问/doc目录遇到303错误时就自动重定向到http://demoserver/old-doc/
Redirect 303 /doc http://demoserver/old-doc/
(3)重新启动Apache服务。
(4)使用浏览器进行测试,页面将自动重定向到/old-doc目录,如图16.22所示。
图16.22 页面重定向