我想讓我的應用上的每個用戶擁有http://user1.example.com格式的專用虛空網址。我如何在Play應用程序中實現此功能。 謝謝。如何在我的play應用程序中實現虛空url?
1
A
回答
2
您可以使用虛擬主機。從Play 1.1的發行說明:
路由文件現在支持主機匹配。如果必須從主機參數中提取操作參數,這可能很有用。例如,對於一個SaaS應用程序,你可以使用:
GET {client}.mysoftware.com/ Application.index
,然後自動檢索客戶價值作爲任何其他請求參數:
public static void index(String client) {
...
}
應該這樣做。
2
在控制器方法中,您可以從request.domain變量中獲取域名。然後,您可以分析你想從域名使用類似使用的用戶名或任何標識:
int endIndex = request.domain.indexOf(".example.com");
if (endIndex <= 0) {
return null;
}
String subdomain = request.domain.substring(0, endIndex);
如果你打算使用的幾種方法該子檢查,你可以做一個單獨的域檢查方法有@ play.mvc.Before註釋,並把用戶對象renderArgs供以後使用的實際調用的控制方法和模板:
@Before
public static void resolveUserSubdomain() {
... Check subdomain and find user ...
renderArgs.put("user", user);
}
您也可在該網站檢查添加到一個單獨的控制器類,並將其納入通過使用@ play.mvc.With類的註釋來控制每個你需要它的控制器。
@With({ExampleDomainCheck.class})
public class ExampleController extends Controller {
... Controller methods ...
}
0
我得到空值和域名不停的變換爲localhost:9000,直到我解決它在Apache配置中使用ProxyPreserveHost on
(httpd.conf文件)文件
相關問題
- 1. 如何在Rails應用程序中實現虛空URL?
- 2. 我如何在我的應用程序中實現雲計算?
- 3. 如何在Android應用程序中實現應用程序空閒超時?
- 4. 在我的iphone中實現空閒時間應用程序
- 5. 如何在我的android應用程序中實現應用程序內購買?
- 6. 如何在我的應用程序中實現代碼在iphone
- 7. 如何實現應用程序在我的應用
- 8. 如何在我的應用程序中實現離線閱讀
- 9. 如何在我的web應用程序中實現OpenID?
- 10. 如何在我的應用程序中實現EGOPhotoViewer?
- 11. 如何在我的應用程序中實現系統鬧鐘?
- 12. 如何在我的VB.Net應用程序中實現XMPP
- 13. 如何在我的應用程序中實現日曆?
- 14. 如何在我的應用程序中實現裝飾器?
- 15. 如何在我的Android應用程序中實現Miracast
- 16. 如何在我的iPhone應用程序中實現FmDatabase?
- 17. 如何在我的簡單應用程序中實現反射?
- 18. 如何在我的rails應用程序中實現枚舉?
- 19. 如何在我的web應用程序中實現Sha512>?
- 20. 如何在我的應用程序中實現SAML
- 21. Android如何在Play書籍中實現3d像動作欄應用程序
- 22. 如何在java web應用程序中創建虛榮URL?
- 23. 如何在WPF應用程序中實現「記住我」
- 24. 如何在我的應用程序中實現我的代碼中的ASyncTask
- 25. 如何更改虛擬url中的應用程序根目錄
- 26. 如何實現openAM SSO到我現有的Web應用程序
- 27. 如何將UITapGestureRecognizer實現到我的應用程序中
- 28. 如何在上傳到Google Play商店之前實現分享應用程序?
- 29. 如何獲得我的Symfony(1.4)應用程序的實際URL?
- 30. 如何實現應用程式在我的應用程序購買
我通過這兩種解決方案越來越空值在我的本地主機上使用httpd.conf中指定的虛擬主機:http://pastebin.com/2NBewFVF –
@SameerSegal抱歉看不到錯誤。如果沒有虛擬主機,它可以工作嗎? –
用vhost解決了它:ProxyPreserveHost –