2012-02-02 53 views
0

我有一個應用程序,我沒有寫,我必須努力改變一些東西。 其中一件事我必須工作好,是一個奇怪的問題,我們已經重新命名了內容的標題 - 並且URL也因此被更改。然而,資源現在可以在舊網址和新網址上獲得 - 而谷歌將其視爲重複內容。 這是Rails知道的問題嗎?Ruby on Rails - 重命名後舊URL仍然存在

我可以通過將頁面重定向到新頁面來修復它,有點像301重定向?

是否有任何代碼可以發佈,以使問題更清楚,或者有沒有可以指向我的方向?

+2

它可以是已生成靜態html文件的緩存。如果這樣刪除這個文件。 – Baldrick 2012-02-02 18:12:34

+0

這個緩存在哪裏? – alemur 2012-02-14 23:30:02

+0

默認情況下,頁面緩存目錄設置爲'Rails.public_path'(通常設置爲'public'文件夾或'public \ share') – Baldrick 2012-02-15 07:35:51

回答

2

您是否在使用friendly_id寶石?

如果你是,只需添加這樣的事情在你的控制器的show動作重定向頁面到新的一個:

... 

def show 
    @item = Item.find params[:id] 

    if request.path != item_path(@item) 
    redirect_to @item, status: :moved_permanently 
    end 
end 

... 
+0

我其實正在使用friendly_id ,讓我試試你的解決方案,並回復給你 – alemur 2012-02-03 14:00:12

+0

我試過這個,但我的問題仍然存在,舊的網址仍然可以訪問 – alemur 2012-02-14 23:26:31

0

可以在你的路由文件的問題。檢查路徑是否仍然存在,並將其刪除。