我想知道如何在Play framework 2.0.x中爲子域名永久重定向301。 例如:www.example.com/*重定向到example.com/*。任何人之前嘗試過?永久重定向與Play 2.0.x
3
A
回答
8
的Global object將允許您intercept the request。出於顯而易見的原因,您應該使用GET請求(即針對SEO目的)執行此操作,但其他人(例如POST,PUT等)應從視圖的開頭正確創建。另一方面,如果它只是一些應用於生活生產的普通HTML頁面的應用程序,可以考慮在它的前面使用一些HTTP服務器 - 然後你可以用一些重寫規則來實現。
import play.GlobalSettings;
import play.mvc.Action;
import play.mvc.Http;
import play.mvc.Result;
import java.lang.reflect.Method;
public class Global extends GlobalSettings {
@Override
public Action onRequest(final Http.Request request, Method method) {
if ("GET".equals(request.method()) && "www.example.com".equals(request.host())) {
return new Action.Simple() {
public Result call(Http.Context ctx) throws Throwable {
return movedPermanently("http://example.com" + request.path());
}
};
}
return super.onRequest(request, method);
}
}
5
在的conf/routes文件
GET/ controllers.Application.index(path = "")
GET /*path controllers.Application.index(path)
在應用/控制器/ Application.scala
object Application extends Controller {
def index(path: String) = Action {
Redirect("http://example.com/" + path, status = MOVED_PERMANENTLY)
}
}
相關問題
- 1. mod_rewrite與重定向永久
- 2. 永久重定向此URL與的.htaccess
- 3. 永久重定向與的.htaccess
- 4. 忽略301永久重定向與NSURLConnection
- 5. 301重定向wordpress永久
- 6. 301永久重定向
- 7. 永久重定向(SSL)
- 8. nginx 301永久重定向
- 9. 重定向()與永久重定向()在ASP.NET MVC
- 10. 301永久重定向是多久?
- 11. 301重寫永久重定向在Nginx
- 12. 重定向Joomla中的永久標記
- 13. 重定向舊的永久鏈接(page_id = x)wordpress
- 14. WordPress的永久鏈接和重定向
- 15. 重定向永久,www重定向和url重寫
- 16. 永久重定向字符串替換
- 17. 301永久重定向不工作(WordPress)
- 18. 重定向blogengine.net(Global.asax中)永久301
- 19. umbraco - 永久重定向網址
- 20. 301永久重定向腳本?
- 21. 使用htaccess永久重定向域
- 22. 永久重定向額外PARAMS
- 23. 301永久重定向htaccess的
- 24. NGINX - 301 /永久重定向(* .cloudapp.azure.com到domain.com)
- 25. .htaccess永久重定向比較
- 26. .htaccess永久重定向(301)問題
- 27. Nginx永久重定向有無斜線
- 28. 301永久重定向野生
- 29. 質量301移動永久重定向
- 30. 「子路線」永久重定向