UrlRewrite:UrlRewrite就是我们通常说的地址重写,用户得到的全部都是经过处理后的URL地址,类似于Apache的mod_rewrite。将我们的动态网页地址转化为静态的地址,如html、shtml,还可以隐藏网页的真正路径,比如:有时候需要将xxx.com/news/ type1/001.jsp 转化成显示路径为xxx.com/news_type1_001.html
有点如下:
一:提高安全性,屏蔽内部的url结构.
二:美化URL
三:更有利于搜索引擎的收入,通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息.
【步骤一】下载文件
在http://tuckey.org/urlrewrite/#download下载最新的jar文件,当前最新的是Beat3.2我用的是urlrewritefilter-2.6.zip。解压得到urlrewrite-2.6.0.jar 和 urlrewrite.xml
【步骤二】新建web项目TestUrlRewrite
在WebRoot下新建index.jsp,修改其代码如下所示:
- <%@ page contentType="text/html; charset=UTF-8"%>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>测试TestUrlRewrite</title>
- </head>
- <body>
- <%
- String id = (String) request.getParameter("id");
- out.println("<h3> the value is : " + id +" </h3> ");
- %>
- </body>
- </html>
【步骤三】添加urlrewrite文件
将urlrewrite-2.6.0.jar复制到WebRoot\WEB-INF\lib下。
将urlrewrite.xml复制到WebRoot\WEB-INF下,其中urlrewrite.xml代码如下所示:
- <?xml version="1.0" encoding="utf-8"?>
- <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.1//EN"
- "http://tuckey.org/res/dtds/urlrewrite3.1.dtd">
- <urlrewrite>
- <rule>
- <from>/(.*).html</from>
- <to>index.jsp?id=$1</to>
- </rule>
- </urlrewrite>
*.html 是一个正则表达式的串。如果你对这个不理解可以学习一下java中正则表达式的应用。
$1 也是一个正则表达式的语言匹配正则中的组捕获。
【步骤四】修改web.xml- <filter>
- <filter-name>UrlRewriter</filter-name>
- <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
- <init-param>
- <param-name>logLevel</param-name>
- <param-value>DEBUG</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>UrlRewriter</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
【步骤五】重启tomcat
访问http://localhost:8080/TestUrlRewrite/2.html,页面效果如图所示:
注意:
1.urlrewrite.xml是utf-8.所以如果你要在rule上加note标签为中文的话,也一定是要utf-8
2.UrlRewriteFilter 最好是配置在web.xml的前面filter上,不然有可能对有些url转变失去作用.
3.在写rule的时,如果有多个参数时,中间的连接符号&应该是&
相关推荐
比如,下面,我要实现这样的URL: http://xxx.com/0725 http://xxx.com/0726 http://xxx.com/0727 … 上面xxx.com是一个记录《今天是》这样的历史内容的一个测试站点。上面链接的意思,就是显示07月25日的历史...
一定要确信 IIS 里面设置站点用的是 ASP.NET 2.0,还有就是一定记得修改 web.config 里 appSettings 小结内的相关内容。如果想把 BLOG 安装在子目录注意把 Bin,App_Data 目录和 Web.config 文件放到根文件夹,不过...
一定要确信 IIS 里面设置站点用的是 ASP.NET 2.0,还有就是一定记得修改 web.config 里 appSettings 小结内的相关内容。如果想把 BLOG 安装在子目录注意把 Bin,App_Data 目录和 Web.config 文件放到根文件夹,不过...
一定要确信 IIS 里面设置站点用的是 ASP.NET 2.0,还有就是一定记得修改 web.config 里 appSettings 小结内的相关内容。如果想把 BLOG 安装在子目录注意把 Bin,App_Data 目录和 Web.config 文件放到根文件夹,不过...
1.4 小结 第2章 SEO基础知识 2.1 SEO概述 2.1.1 链接价值 2.1.2 Google PageRank 2.1.3 可用性和可达性 2.2 搜索引擎排名因素 2.2.1 页上因素 2.2.2 可见的页上因素 2.2.3 不可见的页上因素 2.2.4 基于...
URL重写是Nginx的另一个强大功能,可以使用`rewrite`规则或`try_files`指令实现。例如,如果请求的文件不存在,则重定向到`index.php`处理。对于静态资源和动态内容的分离,Nginx可以通过`proxy_pass`进行反向代理,...
Apache服务器提供了一种强大的功能——Rewrite模块,它可以通过修改URL规则来达到防盗链的目的。以下是具体实现步骤: 1. **确认Rewrite模块已启用** 在Apache的配置文件`httpd.conf`中,确保Rewrite模块已经被...
- `--enable-rewrite`: 支持URL重写 - `--enable-ssl`: 支持SSL加密 - `--with-pcre`: 指定PCRE库的路径 - `--with-apr`: 指定APR库的路径 - `--with-apr-util`: 指定APR-UTIL库的路径 - `--enable-modules=...
#### 小结 通过上述步骤,您可以有效地为IIS服务器配置防盗链功能,从而保护您的网站资源免受未授权访问的影响。需要注意的是,防盗链策略应定期审查和更新,以适应不断变化的安全威胁环境。 以上就是关于IIS防盗...
Apache有许多可选模块,如mod_rewrite用于URL重写,mod_ssl用于HTTPS支持。可以通过`a2enmod`和`a2dismod`命令来启用和禁用模块。 11. **故障排除** 如果遇到问题,可以查看错误日志,使用`tail`命令跟踪实时日志...
您可能感兴趣的文章:Nginx下301重定向域名的方法小结Apache Rewrite实现URL的301跳转和域名跳转比较详细的win2003 IIS6.0 301重定向带参数的问题解决方法IIS7.5下301重定向的设置方法(及伪静态后301重定向出错案例)...
打开服务器的asp.net页面时出现这个错误: ...无法访问请求的页面,因为该页的相关配置数据无效。... 您可能感兴趣的文章:Nginx下301重定向域名的方法小结Apache Rewrite实现URL的301跳转和域名跳转比
#### 六、小结 本教程通过逐步指引,介绍了如何从零开始搭建基于Zend Framework的应用环境,包括必要的软件安装、框架下载、目录结构配置、Apache服务器配置以及如何加载和使用Zend Framework的关键组件。通过实践...
**小结**: 尽管上述文件中提到对cakephp的认识可能存在偏差,但所提供的知识点仍然反映了cakephp的基本使用方法和一些关键特性。cakephp的初学者可以通过上述流程和组件的了解,开始构建自己的应用程序。不过,随着...