【问题标题】:Legacy Urls Rails with multiple subdomains具有多个子域的旧版 Urls Rails
【发布时间】:2012-07-20 18:17:16
【问题描述】:

好的,我一直在研究多种方法,但无法真正找到可行的解决方案。

我们有一个旧网站,其中包含用作类别的子域,并且 url 结构如下所示。

http://www.my_category.my_site.com/subcategory/article_123.html

我需要找到一种方法来重定向(使用 301 的)到

http://www.my_site.com/articles/my_category/sub_category/article-123

我查看了 nginx 重定向(这将不起作用,因为您无法修改路径 - 将下划线更改为破折号)

Rails 路由似乎不适用于 2 个子域 (www.mycategory)

Rack Rewrite 也不能解决问题(它只会重定向到同一个子域)。

关于最佳方法的任何想法?我不排除上述情况,但想看看人们的想法?

【问题讨论】:

    标签: ruby-on-rails ruby nginx


    【解决方案1】:

    使用 nginx 就像 ABC 一样简单:

    server {
        listen 80;
        server_name ~^www\.(?<category>my_category)\.my_site\.com$;
        return 301 http://www.my_site.com/articles/$category$request_uri;
    }
    

    【讨论】:

    • 这很酷。但是你能修改 $request_uri 吗?从 /hello-world/article_about-1.html 到 /hello-world/article-1.html。基本上执行字符串替换?
    猜你喜欢
    • 2015-10-31
    • 1970-01-01
    • 1970-01-01
    • 2012-12-25
    • 2019-01-30
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多