我在tomcat 8上开发了一个带有Java的多租户应用程序。我想现在测试一下。有没有办法可以复制/创建指向tomcat中相同应用程序的不同URL?即喜欢以下方式。
https://abc.localhost:8080/myapp
和
https://xyz.localhost:8080/myapp
abc和xyz的原因是它们是应用程序的子域。使用它我将能够识别租户。
P.S我不想使用基于cookie的方法,也不想继续传递或要求用户输入租户名称或租户ID。
答案 0 :(得分:0)
您可以使用hosts文件对此进行测试。将Tomcat HTTP端口更改为80并编辑主机文件:
Linux上的127.0.0.1 abc.localhost
127.0.0.1 xyz.localhost
:/ etc / hosts 在Windows上:C:\ Windows \ System32 \ Drivers \ etc
我用它来测试我的多租户应用程序,它也为每个租户使用子域。 (我使用WildFly作为Application Server)
答案 1 :(得分:0)
好的,我找到了解决方案,而无需将我的应用程序指向端口80。
我使用了fiddler
。在提琴手中你可以改变规则。从菜单规则 - >自定义规则。
选择自定义规则将打开一个脚本,其中预定义了多种方法,OnBeforeRequest
,OnBeforeResponse
等。我修改了OnBeforeRequest
并添加了以下代码行。
if (oSession.host=="www.mysubdomain1.maindomain.com:8443") {
oSession.host="localhost:8443";
}
if (oSession.host=="www.mysubdomain2.maindomain.com:8443") {
oSession.host="localhost:8443";
}
就是这样。您可以根据自己的意愿将其映射到您的应用。
fiddler文档链接是:Fiddler Script documentation