Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java tomcat项目的URL设置_Java_Eclipse_Macos_Tomcat_Url - Fatal编程技术网

Java tomcat项目的URL设置

Java tomcat项目的URL设置,java,eclipse,macos,tomcat,url,Java,Eclipse,Macos,Tomcat,Url,我目前正在从事一个JavaEEEclipseTomcat项目。 目前,我可以通过输入http://localhost:8080/ 如果我想通过输入http://test.com/ 当我输入http://mtest.com/进入mac电脑上的/private/etc/hosts文件,在那里添加一行,如下所示 127.0.0.1 test.com 另外,请确保应用程序在端口80而不是端口8080上运行,因为默认的web端口解析为80,即当http的端口号为80时,不需要将其添加到url。443是ht

我目前正在从事一个JavaEEEclipseTomcat项目。 目前,我可以通过输入
http://localhost:8080/
如果我想通过输入
http://test.com/

当我输入
http://mtest.com/

进入mac电脑上的
/private/etc/hosts
文件,在那里添加一行,如下所示

127.0.0.1 test.com

另外,请确保应用程序在端口80而不是端口8080上运行,因为默认的web端口解析为80,即当http的端口号为80时,不需要将其添加到url。443是https的端口

同样,您可以将不同的IP映射到您的移动应用程序和web应用程序URL

一个很好的方法是在本地使用虚拟盒

安装virtual box通过运行另一个os实例和tomcat实例在那里加载移动应用程序>启用虚拟机和osx之间的交叉通信(验证它是否可以尝试ssh访问您的虚拟机)。>在osx的
/private/etc/hosts
中,使用移动应用url添加虚拟机的ip

示例主机文件如下所示

  127.0.0.1             test.com 
  192.168.0.256       m.test.com 
尽管此解决方案可能与实时场景不太一致,但对本地环境可能有帮助

这就是我为自己所做的

现在,对于重定向,您不需要麻烦。虽然用户从手机输入web应用程序url时可能会出现这样的情况,但您可以在页面中添加下面这样的脚本,或者使用我不太熟悉的apache重定向

<script type="text/javascript">
  if (screen.width <= 600) {
    window.location = "http://m.test.com";
  }
</script>


如果(screen.width取决于您可能托管应用程序的位置(位于地下室的服务器或与托管服务(如Huroku、openshift等)共享托管),您需要向域名公司(GoDaddy)注册您的域名(在本例中为test.com)

完成后,您需要将域名指向承载应用程序的ip地址。如果它是您地下室的服务器,您可能需要在路由器上执行一些端口转发,但最重要的是,域名需要指向静态ip地址,而不是动态ip地址

如果与huroku或openshift等公司托管,请找出应用程序的IP地址,并将您的域名指向它

至于m.test.com子域,您需要在主域下设置一个子域,它可以指向您的移动页面


希望您的应用程序编码为移动响应,这取决于启动应用程序的平台,它应该为该设备/平台提供尽可能好的视图。

为什么被否决?请让我知道,以便我可以改进我的答案。我没有否决。那么,如果我启动另一个项目,它是否可以通过s访问ame名称?这是一个web应用程序,您是否要为每个客户端编辑/etc/hosts?您对设置端口号的解释也非常缺乏细节。我猜他是在本地进行的。否则他可能需要在apache.htaccess中重写规则。如果他在测试服务器上进行此操作,那么他将拥有不同的ip,因此每个ip都是相同的可以映射到url。这里讨论的所有内容都是本地环境。