2010-09-19 42 views
1

我有我的應用程序引擎項目myproject.appspot.com託管在myprojectsdomain.com。我想將myprojectsdomain.com上的所有鏈接永久重定向到brandNewDomain.com。我在http://code.google.com/p/urlrewritefilter/找到了Java URL Rewrite篩選器,但是我沒有看到有關如何將301用於更改域的重定向的文檔。所有的例子似乎都是在同一個域中重寫url,這對我目前的情況來說並不是很好。我在錯誤的地方尋找,還是有更好的方式讓我永久重定向我的Google App Engine Java項目?謝謝!Google App Engine Java,301重定向URL重寫過濾器

回答

1

是的,你正在看錯模塊。 urlrewritefilter只是在你的servlet看到它之前改變URL(但它仍然會去那個servlet)。它不會做重定向。

您可以通過將所有URL映射到單個servlet(它只是返回重定向響應(response.sendRedirect))來實現此目的。

+0

我可能以混亂的方式陳述了問題。我的網站現在位於la.truxmap.com,我想永久重定向到la.foodtrucksmap.com。也就是說,我想讓相同的servlet保持完好,我只是想將這個新域用於SEO目的。 – 2010-09-19 03:31:53

+0

同一App Engine上的兩個域?在這種情況下,添加一個過濾器來查看域名是否進入並重定向,如果它不是您想要的域名,那麼請求繼續。但是你可能應該設置兩個不同的應用引擎,每個域名一個。舊的會重新導向新的。 – Thilo 2010-09-20 04:58:28

+0

我花了一段時間閱讀有關過濾器,我知道我需要做什麼,但我很難找出過濾器應該去的地方。我使用GWT和GAE Java,所以我認爲它應該在調用頁面加載的servlet之前進行,但這只是擴展了RemoteServiceServlet的RPC servlet。 – 2010-09-20 11:20:37

0

我會用OCPsoft重寫此:

隨着Rewrite

這裏是如何做到這一點使用重寫,這是非常可配置的。

ConfigurationBuilder.begin() 
    .defineRule() 
    .when(Domain.matches("myprojectsdomain.com").and(Path.matches("/{1}") 
      .where("1").matches(".*"))) 
    .perform(Redirect.permanent("http://brandNewDomain.com/{1}")); 

我希望這會有所幫助,或者至少提供有關如何使用任何Rewrite工具進行操作的想法。

〜林肯