当我用 s1.mydomain.com 访问用 server1.xml 配置的 servlet
当我用 s2.mydomain.com 访问用 server2.xml 配置的 servlet
类似下面这样的配置,但是<url-pattern>应该是不支持配置域名的
有没有方法可以实现这样的功能
<servlet>
<servlet-name>server1</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:server1.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>server1</servlet-name>
<url-pattern>http://s1.mydomain.com/</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>server2</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:server1.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>server2</servlet-name>
<url-pattern>http://s2.mydomain.com/</url-pattern>
</servlet-mapping>
1
ixiaohei 2017-06-29 12:07:10 +08:00 1
web.xml 里面干不了这种事,多域名路由到不同的主机是虚拟 Host 做的,要去 tomcat 的 server.xml 里面配置。另外 web.xml 只能处理应用后路径的的东西,比如 http://域名 /应用 /这里才是 servlet maping 处理的地方。
另外你的用法有点奇葩,新手么? |
2
af463419014 OP @ixiaohei
之前的方法是用 nginx 配置的,可以实现,但是这样需要启动 2 个 web 程序,比较耗费系统资源,想在一个 web 下节省系统资源 用法确实比较奇葩 这是现在 ngingx 的配置 当我用 s1.mydomain.com 访问会进入 8080 端口的 web,用 s2.mydomain.com 访问会进入 9080 端口的 web ``` server { listen 80; server_name s1.mydomain.com; location / { proxy_pass http://127.0.0.1:8080; } } server { listen 80; server_name s2.mydomain.com; location / { proxy_pass http://127.0.0.1:9080; } } ``` |
3
irockytan 2017-06-29 12:52:45 +08:00 via iPhone 1
tomcat 也有 virtualhost 的
|
4
novaeye 2017-06-29 12:59:32 +08:00 1
两个 servlet 分别 mapping 不同的子路径, 比如
<servlet-mapping> <servlet-name>server1</servlet-name> <url-pattern>/s1</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>server2</servlet-name> <url-pattern>/s2</url-pattern> </servlet-mapping> 然后用 tomcat 内置的 rewrite 功能来做分发 https://tomcat.apache.org/tomcat-8.0-doc/rewrite.html |
5
af463419014 OP @irockytan virtualhost 这个技术好像有用,我研究下
|
6
RubyJack 2017-06-29 13:08:32 +08:00
相信我,使用 Nginx 反而节约资源的
|