![](/img/trans.png)
[英]In java networking, can I get the domain name via which the client tried to access the server?
[英]How can I let a server sense which domain name it is serving?
我有一个Java Servlet容器。 这个servlet容器可以用于localhost:8080
, 192.168.1.2:8080
, www.development.example
或www.production.example.com
。 如何让Servlet容器和/或任何正在运行的servlet 感知它所服务的域名?
servlet应该能够看到整个请求URL:
方法1:获取请求URL并自行解析。
String url = request.getRequestURL().toString();
方法2:
String server = request.getServerName()
看到这个答案
对于Servlet,请在请求对象上使用getServerName()
方法。
就servlet容器而言,如果你把apache放在容器前面,你就可以用VHost做一些chicanry。 您将不得不查看您的特定servlet容器的文档,以查看他们的HTTP服务器是否支持该级别的VHosts。
String host = request.getHeader("Host");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.