【问题标题】:URL Rewrite/Mod Rewrite .htaccess on Apache and spring mvcApache 和 spring mvc 上的 URL 重写/Mod 重写 .htaccess
【发布时间】:2015-02-24 08:21:27
【问题描述】:

我的网站上只有一个入口点

example.com/AAA/BBB

对数据库/应用程序的所有访问都是通过这个 spring mvc 控制器。

我想显示我上面显示的网址。

example.com/AAA-BBB

想法是去掉/AAA/BBB,给出有意义的句子,比如AAA-BBB

我在 Ubuntu 和 Spring mvc 上使用 apache2

有什么建议吗?

【问题讨论】:

    标签: spring apache .htaccess mod-rewrite


    【解决方案1】:

    您可以在 DOCUMENT_ROOT/.htaccess 文件中使用此代码:

    RewriteEngine On
    RewriteBase /
    
    RewriteRule ^([^-]+)-(.+)$ /$1/$2 [L]
    

    【讨论】:

    • 首先验证您的.htaccess 是否启用,通过在您的.htaccess 顶部放置相同的垃圾(随机)文本,看看它是否会产生500(内部服务器)错误?
    • 是的,它已启用,它的重写类似于示例,RewriteRule ^(.*)/Cochin/(.*)$ $1/kochi/$2 [R=301,L] RewriteRule ^(.*) /cochin/(.*)$1/kochi/$2 [R=301,L]
    • 保持上述规则低于您的 301/302 规则。并告诉我您在浏览器中输入的确切网址是什么?
    • 进入example.com/halls/chennai,它有一个spring mvc控制器来从数据库中获取数据,想在url浏览器上保持example.com/mantapams-in-chennai这样的url,功能就像第一个
    • 有2个问题。您有 2 个连字符,并且在漂亮的 URL 中没有 halls。如果您输入example.com/halls-chennai,那么它将被路由到example.com/halls/chennai
    猜你喜欢
    • 2012-02-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    • 1970-01-01
    相关资源
    最近更新 更多