在tomcat中针对同一应用程序的多个Url来测试多租户

时间:2017-04-10 13:14:46

标签: java tomcat multi-tenant

我在tomcat 8上开发了一个带有Java的多租户应用程序。我想现在测试一下。有没有办法可以复制/创建指向tomcat中相同应用程序的不同URL?即喜欢以下方式。

https://abc.localhost:8080/myapp

https://xyz.localhost:8080/myapp

abc和xyz的原因是它们是应用程序的子域。使用它我将能够识别租户。

P.S我不想使用基于cookie的方法,也不想继续传递或要求用户输入租户名称或租户ID。

2 个答案:

答案 0 :(得分:0)

您可以使用hosts文件对此进行测试。将Tomcat HTTP端口更改为80并编辑主机文件:

  

127.0.0.1 abc.localhost
  127.0.0.1 xyz.localhost

Linux上的

:/ etc / hosts 在Windows上:C:\ Windows \ System32 \ Drivers \ etc

我用它来测试我的多租户应用程序,它也为每个租户使用子域。 (我使用WildFly作为Application Server)

答案 1 :(得分:0)

好的,我找到了解决方案,而无需将我的应用程序指向端口80。

我使用了fiddler。在提琴手中你可以改变规则。从菜单规则 - >自定义规则。

选择自定义规则将打开一个脚本,其中预定义了多种方法,OnBeforeRequestOnBeforeResponse等。我修改了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