如果它是I18n,如何从根URL中删除参数

时间:2015-12-16 15:20:15

标签: ruby-on-rails seo

过时(至少对谷歌来说)

最近我研究了一下SEO,发现搜索引擎在某种程度上“不喜欢”URL中的参数。可理解,因为它们不是真正的人类可读或往往不是永久性的。

现在的问题是,如果我按照Rails Guides设置I18n然后想要链接到root_path怎么办?它链接到根,但向URL添加?locale=en。所以http://www.example.com/?locale=de

即使SEO不再受此影响,我认为如果网址看起来像http://www.example.com/en而不是http://www.example.com/?locale=en,它看起来会更好。

1 个答案:

答案 0 :(得分:0)

我找到了一个非常简单的解决方案。

我刚刚添加了另一条名为routes.rb的{​​{1}}路线。

示例:

i18n_root

现在我只需将Rails.application.routes.draw do root 'welcome#index' # ... get ':locale' => 'welcome#index', as: :i18n_root end 添加到链接到根路径的链接,一切正常。

返回的网址:

i18n_root_path

如果我在应用程序中已有很多链接,另一种可能的解决方案是创建自定义根目录。

示例:

http://www.example.com/en

希望这对其他人也有帮助。