Java spring mvc和子域
我目前正在用SpringMVC开发一个应用程序,我想使用子域。请确保用户john已在我的应用程序中注册 因此,当用户键入john.myapp.com/something时。我想将john存储在某个地方(不知道在哪里),并重定向到侦听“某物”的控制器。我希望澄清 我写了这个拦截器:Java spring mvc和子域,java,servlets,spring-mvc,Java,Servlets,Spring Mvc,我目前正在用SpringMVC开发一个应用程序,我想使用子域。请确保用户john已在我的应用程序中注册 因此,当用户键入john.myapp.com/something时。我想将john存储在某个地方(不知道在哪里),并重定向到侦听“某物”的控制器。我希望澄清 我写了这个拦截器: public class SubdomainHandlerInterceptor extends HandlerInterceptorAdapter { @Override public bool
public class SubdomainHandlerInterceptor extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
System.out.println(request.getServletPath());
return super.preHandle(request, response, handler);
}
}
在我的spring-servlet.xml中
<mvc:interceptors>
<bean class="ar.com.saturn.core.interceptor.SubdomainHandlerInterceptor"> </bean>
</mvc:interceptors>
问题是,当我写“john.localhost:8080/Saturn”时,没有发生任何事情,子域handler拦截器没有到达。
我是否必须编写其他东西而不是HandlerInterceptorAdapter来处理子域,或者我遗漏了什么
我希望澄清。提前感谢。从症状判断域
john.localhost
没有指向任何地方
您需要将其添加到指向127.0.0.1
(或等效ipv6)的hosts
文件中
对于真实的托管域,您需要向dns配置中添加一个指向目标服务器的条目。大多数虚拟主机都会为您解决这一问题。到底发生了什么?您是否收到任何http错误?谢谢您的时间。什么都没发生。只是浏览器超时。控制台也没有登录。谢谢。但是,如果我在dns中添加一个条目,我能在应用程序代码中获得“john”吗?@Müsli是的,
Host
头将设置为john.localhost:8080
,因此您只需要提取并解析该头。谢谢。我会尽快测试它。