java - 使用动态 jsp 和 servlet 构建 URL 有哪些策略?

标签 java jsp tomcat servlets seo

我有一个生成许多动态公司简介的站点。 这些都通过一个 jsp 页面显示,并带有一个标识公司的参数。

我不是 SEO 实践方面的专家,但我确信用户友好的 url 对于搜索引擎来说比晦涩的参数更好。

所以而不是

site.com/company.jsp?id=21312

应该是这样的

site.com/Country/State/Company_Name 

或类似的东西。

是否有生成这些 url 的任何现有策略或最佳实践? 我的环境是一个 jsp/servlet tomcat 容器,我使用的是前 View Controller 模式(如果有任何不同的话)。

这是我关于如何解决它的两个想法。

1) 保存公司资料后(后端)生成一个 html 页面,并重定向到参数化的 jsp。此页面将保存在与我上面给出的示例相匹配的目录结构中。/CountryName/StateName/CompanyName.html

我不知道搜索引擎是否会忽略它,因为它会重定向到另一个页面。我还预测,当公司名称更改或位置更改时,内务管理可能会成为一个问题。所以我不知道这是否是最好的选择。

2) 以某种方式有一个servlet 解释url 并相应地重定向。

换句话说,有一个名为 Map 的 servlet(例如)和一个 url,如:site.com/Map/Country/State/CompanyName 将被 Map servlet 拾取并分解 url 以找到有问题的页面。

我不知道 servlet 是否可以做到这一点。 (编辑:可以用 Map/* 来完成)

如果我遗漏了任何其他选项,请告诉我,或者我是否可以改进我现有的想法之一。

非常感谢。

最佳答案

UrlRewriteFilter 来了!

http://tuckey.org/urlrewrite/

按照您的要求执行的配置如下所示:

<rule>
  <name>World Rule</name>
  <from>^/world/([a-z]+)/([a-z]+)$</from>
  <to>/world.jsp?country=$1&amp;city=$2</to>
</rule>

http://urlrewritefilter.googlecode.com/svn/trunk/src/doc/manual/4.0/index.html

关于java - 使用动态 jsp 和 servlet 构建 URL 有哪些策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25094113/

相关文章:

java - 使用 Spring boot 找不到 http ://www. springframework.org/tags/form 的 taglibrary 描述符

java - Tomcat 异常 : java. lang.NullPointerException utils.ManageIP.validIp (ManageIP.java:113)

linux - 无法停止 Tomcat

java - java中多态性的小误区

jsp - 直接在EL中访问Java类的字段

java - Proguard : google. gms - 重复的 zip 条目 c.class == zzab.class

java - 如何创建线程安全的单例类(保存状态)

Apache Tomcat 负载平衡文件副本

java - 我应该将 ArrayList 声明/初始化为列表、ArrayList 还是 <Cat> 的 ArrayList

java - 如何包含同级项目中的 GWT 模块?