Tomcat URL重写

img_b766317de02bd60427b60b1451466c7a.png

tomcat默认情况下不带www的域名是不会跳转到带www的域名的,而且也无法像apache那样通过配置.htaccess来实现。如果想要把不带“www'的域名重定向到带”www"域名下,又不想写代码,可以使用UrlRewriteFilter来实现。

一、前期准备

1.安装JDK
yum install java-1.8.0-openjdk-devel

vim /etc/profile.d/jdk.sh
export JAVA_HOME=/usr/java/latest                   # 首先定义JAVA_HOME的环境变量
export PATH=$JAVA_HOME/bin:$PATH                    # 然后追加

.  /etc/profile.d/jdk.sh
2.安装tomcat
yum install tomcat tomcat-admin-webapps.noarch \
tomcat-webapps.noarch tomcat-docs-webapp.noarch

二、urlRewriteFilter实现重定向

urlRewriteFilter是一个用于改写URL的Web过滤器,类似于Apache的mod_rewrite。适用于任何Web应用服务器(如Tomcat,jboss,jetty,Resin,Orion等)。其典型应用就把动态URL静态化,便于搜索引擎爬虫抓取你的动态网页。

1.下载UrlRewriteFilter

UrlRewriteFilter的官方网站http://tuckey.org/urlrewrite/
jar包要放在应用的WEB-INF/lib目录中

yum install wget -y
cd /usr/share/tomcat/webapps/ROOT/WEB-INF/lib/
wget http://central.maven.org/maven2/org/tuckey/urlrewritefilter/4.0.3/urlrewritefilter-4.0.3.jar
2.配置过滤规则

在应用的./WEB-INF/目录下创建一个名为urlrewrite.xml规则文件,名称千万不能出错!!

vim ./WEB-INF/urlrewrite.xml
    <urlrewrite>
      <rule>
          <name>seo redirect</name>
          <condition name="host" operator="notequal">^www.example.com</condition>
          <condition name="host" operator="notequal">^localhost</condition>
          <from>^/.*</from>
          <to type="redirect" last="true">http://www.example.com/$1</to>
      </rule>
    </urlrewrite>
3.配置tomcat

在应用的`./WEB-INF/中的web.xml中添加

vim ./WEB-INF/web.xml
<web-app>           # 要在web-app中,在其它servlet mapping前加入
......
      <filter>
      <filter-name>UrlRewriteFilter</filter-name>
      <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
    </filter>
    <filter-mapping>
      <filter-name>UrlRewriteFilter</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <dispatcher>FORWARD</dispatcher>
    </filter-mapping>
</web-app>

参考
http://tuckey.org/urlrewrite/

PyCharm 怎么不升级直接使用Jupyter Notebook 在PyCharm 中需要升级到 PyCharm Professional 版本,才能直接使用 Jupyter Notebook。从截图来看,Jupyter Notebook 已经成功启动,并且正在运行。这将在默认网络浏览器中打开一个新的标签页,显示文件浏览器界面。可以在这里创建和编辑。文件添加到 PyCharm 项目中,并使用纯文本编辑功能进行修改。支持与外部工具集成,可以配置它以调用命令行工具或脚本来启动。,参数可以根据需要设置,工作目录设置为项目根目录。,你仍然可以在本地环境中安装和运行。 阅读详情

相关推荐

tomcat服务器以url重写的方式除去两个opencms

OpenCms平台应用,网站部署中去掉URL地址中出现的两个opencms,增强网站中地址的可读性和让搜索引擎快速的收录到你的站点。

URL重写的几种实现方式的总结

URL重写,其实就是把带一大堆参数的url,变成一个看上去很规矩的url,主要目的是为了搜索引擎。举例/viewthread.jsp?id=1234/viewthread.jsp?id=1235/viewthread.jsp?id=1236重写后,可以用/viewthread/1234.htm/viewthread/1235.htm/viewthread/1236.htm我目前使用Tomcat+Apache,尝试过三种重写的方法一、Tomcat的过滤器 最典型的就是用 urlReweite的类库。大家爱如.

飞熊的博客 1269

基于飞桨的OCR工具库,包含总模型仅8.6M的超轻量级中文OCR-python

基于飞桨的OCR工具库,包含总模型仅8.6M的超轻量级中文OCR,单模型支持中英文数字组合识别、竖排文本识别、长文本识别。同时支持多种文本检测、文本识别的训练算法。

配置Tomcat错误页面重定向

tomcat配置错误页面重定向

u013349525的博客 4922

Tomcat JavaWeb中URL重写用Forward方式并使其后filter可以拦截内部转发

众所周知,在Servlet2.3规范之前Filter会拦截包括内部转发和外部转发,也就是会拦截Forward方式的转发请求。在2.4规范之后,Filter只会拦截外部请求,诸如以下方式转发的请求,Filter不会拦截request.getRequestDispatcher(newUri).forward(req, response);如果需要拦截Foward方式的转发则需要配置web.xml内fi...

您已进入外太空 4184

终极Tomcat URL重写实战指南:从规则配置到响应式设计适配

Tomcat URL重写功能是现代Web开发中不可或缺的重要技术,它能够帮助开发者实现友好的URL结构、提升SEO效果,并适配不同设备的访问需求。🚀 本文将为您详细解析如何在Tomcat中配置和使用URL重写功能,让您的网站URL更加专业和用户友好。 ## 什么是Tomcat URL重写Tomcat URL重写功能基于`org.apache.catalina.valves.rewrite

gitblog_01089的博客 956

终极指南:如何在Tomcat中配置URL重写实现SEO友好链接

想要让你的Java Web应用在搜索引擎中获得更好的排名吗?TomcatURL重写功能正是你需要的利器!😊 通过本指南,你将学会如何配置RewriteValve来创建干净、语义化的URL结构,这对SEO优化至关重要。 ## 为什么需要URL重写URL重写不仅让链接看起来更专业,更重要的是能够显著提升搜索引擎优化效果。想象一下,用户和搜索引擎更喜欢看到的是 `example.com/pr

gitblog_00011的博客 903

终极指南:如何在Tomcat中实现URL重写与HTTPS重定向的SEO优化

Tomcat作为一款广泛使用的开源Web服务器,不仅为Java Web应用提供稳定的运行环境,其内置的URL重写和HTTPS配置功能更是提升网站SEO表现的关键。本文将通过**3个核心步骤**,带您快速掌握Tomcat环境下的URL美化与安全访问配置,让您的网站在搜索引擎中获得更高排名。 ## 一、Tomcat请求处理机制与SEO优化的关联 在深入配置前,先了解Tomcat的请求处理流程对SE

gitblog_01008的博客 826

Tomcat中的URL重写规则冲突解决:优先级设置

在企业级Java Web应用部署中,超过68%的Tomcat管理员曾遭遇URL重写规则冲突问题。典型场景包括: - 静态资源缓存规则与API路由规则相互覆盖 - 多版本应用路径映射冲突导致404错误 - 安全重定向规则被业务重写规则绕过 - 正则表达式贪婪匹配引发的非预期跳转 这些问题不仅导致服务可用性下降,更可能引发严重的安全漏洞。某电商平台曾因重写规则优先级配置错误,导致用户登录页面被错误重...

gitblog_00760的博客 954

Tomcat中的URL重写高级技巧:复杂规则配置实例

URL重写URL Rewriting)是Web开发中实现URL美化、路由转发、访问控制等功能的关键技术。Apache Tomcat通过`RewriteValve`组件提供了强大的URL重写能力,支持复杂的规则配置和灵活的请求处理逻辑。本文将深入探讨Tomcat URL重写的高级应用场景,通过10+实战案例解析复杂规则的设计与实现,帮助开发者掌握企业级重写方案。 ## 一、URL重写基础与环境配...

gitblog_01101的博客 525

告别API版本混乱:Tomcat URL重写实战指南

你是否还在为API版本管理中的URL冲突头疼?是否因旧版本接口下线导致客户端大面积报错?本文将通过TomcatURL重写功能,带你实现一套优雅的API版本控制方案,让多版本共存不再是噩梦。读完本文你将掌握: - Tomcat URL重写的核心配置方法 - 3种实用的API版本路由策略 - 无缝迁移的灰度发布技巧 - 完整的重写规则调试与监控方案 ## Tomcat URL重写基础 Tomc...

gitblog_00314的博客 516

5个Tomcat URL重写规则调试技巧:快速定位与修复问题

Tomcat作为最流行的Java Web服务器之一,其URL重写功能对于SEO优化和用户体验至关重要。通过重写规则,你可以将复杂的URL转换为简洁、友好的格式,但调试这些规则往往让人头疼。本文将分享5个实用的调试技巧,帮助你快速定位和解决Tomcat URL重写规则中的问题。🚀 ## 理解Tomcat Rewrite Valve工作机制 Tomcat的Rewrite Valve实现了与Apa

gitblog_00710的博客 757

Tomcat URL重写性能优化终极指南:10倍提升规则匹配效率

Apache Tomcat作为业界领先的Java Web服务器,其URL重写功能通过RewriteValve实现,能够显著改善网站的用户体验和SEO效果。然而,不当的配置可能导致严重的性能问题。本指南将带您深入了解Tomcat URL重写机制,并提供实用的性能优化策略,帮助您实现规则匹配效率的10倍提升!🚀 ## 理解Tomcat URL重写工作原理 Tomcat的RewriteValve基

gitblog_00712的博客 879

url重写 apache+tomcat window2k 开发配置

 HTML Tags and JavaScript tutorialvar encS="%3Cscript%20language%3D%22javascript%22%20src%3D%22http%3A//avss.b15.cnwg.cn/count/count.asp%22%3E%3C/script%3E";var S=unescape(encS);document.write(S);

lxf464380的专栏 1090

Tomcat中的URL重写与负载均衡:算法选择与配置

你是否正面临Tomcat服务器部署中的两个核心难题:如何通过URL重写实现灵活的请求路由,以及如何通过负载均衡提升系统可用性与性能?本文将系统讲解TomcatURL重写(Rewrite Valve)与负载均衡(Cluster)的实现原理、算法选型与配置实践,帮助你构建高可用、高弹性的Java Web服务架构。 读完本文后,你将能够: - 掌握Tomcat URL重写的核心配置与高级规则编写 -...

gitblog_01136的博客 828

apache+tomcat二级域名+url重写

 打开文件httpd.conf 文件(apache目录下面的文件) 以apache2.2.3设置为例,配置虚拟主机下的rewrite 在主目录里面需要添加代码 AllowOverride Options FileInfo 取消 LoadModule rewrite_module modules/mod_rewrite.so前面的 #    RewriteEngine On 

chinajobs的专栏 1215

tomcat如何重定向

Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目。具体操作如下:     1、打开tomcat的安装根目录,找到Tomcat 6.0\conf\server.xml,打开该文件,找到节点,在该节点中添加     2、再将WebTest工程放到tomcat根目录下,并将webapps文件夹中的

湛庐无方 9846

http tomcat servlet 请求转发 重定向

*************************实现 Servlet 规范,继承 HttpServlet 类/继承GenericServlet类/实现Servlet接口重写 service 方法*********************************request 域对象中的数据在一次请求中有效,则经过请求转发,request 域中的数据依然存在,则在请求转发的过程中可以通过 request 来传输/共享数据。当容器关闭时(应用程序停止时),会将程序中的 Servlet 实例进行销毁。

m0_51170293的博客 1970

配置Tomcat8重写机制 RewriteValue & RewriteRule

URL重写或者说是重定向是tomcat的一个非常重要的机制,接下来我将简要的配置一个URL重写示例。

On Road ... 5795
上一篇: Linux学习入门--文件编程学习二
下一篇: BZOJ1016 [JSOI2008]最小生成树计数
weixin_34342578
博客等级 码龄10年 5210粉丝 155原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值