2017-04-02 67 views
1

我在我最后一年的项目中工作,并使用eclipse JEE,tomcat 8.5和Axis 2(所有这些都在Ubuntu 16中运行)在动态Web项目中创建了一个Web服务。这个Web服务调用一些安装在计算机上的程序(例如Matlab),所以我需要这台计算机来托管Web服务。这个Web服务在本地主机上正常工作(我创建了一个客户端来检查它),现在我需要执行下一步。我怎样才能在互联网上部署这个Web服务? (NO localhost),有任何教程或文档可以做这样的事情吗?我工作的电脑是我的大学,所以它连接到大学网络。我知道如果我右键点击我的项目并选择导出它说“WAR文件”,这场战争将有所有的引用和.jar,我补充说? (我害怕这个,因为我需要添加一些.jar以及一些本地库位置)。另外我知道我需要有一个Statc IP而不是动态IP。如果我无法访问大学路由器,该如何实现?如何在互联网上部署我的Dynamic web项目

感谢您的帮助。

+0

你需要有tomcat的启动和运行也 – efekctive

+0

主机/服务器你是什么意思? 计算机应该是服务器主机? 它需要安装程序。 –

+0

我想你需要从'GoDaddy'这样的虚拟主机提供商购买一台Web服务器?或者您可以使用(https://www.heroku。com)'heroku'并获得一个免费的java clod平台来测试你的应用程序。 –

回答

1

如果你想要自己的域名,那么你必须购买一个域名,如果你想在互联网上。有像GoDaddyBigRock这样的网站,提供域名。

如果您正在进行测试或演示,可以使用NGROK工具。这个工具将通过互联网提供一个域(类似于http://.ngrok.io),它将映射到你的本地主机。如果您使用付费版本,则可以自定义域名。

ngrok.exe http 8080 

OR

ngrok.exe start -config="config.yml" config-name 

config.yml

http_proxy: "" 
log: ngrok.log 
tunnels: 
    config-name: 
    proto: http 
    addr: 8080 
+0

嗨,你有没有使用过? 如果我有2个不同的项目(动态网络项目),每个不同的应用程序,如果我配置NGROK工具给我的本地主机的域,我选择其中一个项目的选项¨Run在服务器上(本地主机在这个案件)的网址将¨主办该项目?然后如果我决定“在服务器上运行”,那么另一个项目的URL将会托管新的项目呢? 就这么简单? –

+0

是的..它很简单..它没有做任何事情,只是将互联网网址映射到您指定的本地主机和端口。我在个人和专业级别都使用过它。它运作良好。 –

0

如您所述,您需要在互联网上使用“计算机托管Web服务”,因为您也有使用特定库的限制,因此您不能使用“准备到主机”(paas)解决方案,如heroku,因为您将无法访问/控制托管您的Web应用程序的计算机。我知道处理这个唯一的解决方案是VPS托管(https://www.ovh.com/us/vps/),你可以“租用”一台远程计算机(如果你需要的话,可以使用Ubuntu 16),并且可以完全控制它,例如你可以安装任何你想要的本地库它,以及你想要的任何servlet容器/ Web服务器就像你在本地计算机上一样。

但是然后你的网络服务将在互联网上,这是“大学网络之外”,如果你需要访问一些只能从大学网络访问的数据/服务,你不能使用这个解决方案,除非你有一个特殊的和担保)通过VPN连接大学网络,但例如,如果大学网络中存在允许来自互联网的流量(如果情况并非如此......但您可以仍然要求大学的IT部门)。无论如何,你想要做的事情不能实现“简单的方式”,很多预计会有这种工作的工作。如果这是一个大学项目,也许它应该留在大学网络内。

+0

Web服务是否用于大学以外的人并不重要,因此VPS托管是答案的权利?他们是否要安装requiered软件? Matlab的例子? –

+0

不幸的是,你必须自己安装这个解决方案所需的所有东西,就像你在本地计算机上做的那样。有了这个VPS解决方案,你只有一个空系统(你可以选择Ubuntu/fedora/windows ...),但其余的配置依赖于你的需要... – smasper

+0

好吧,我明白你在说什么,但我想说我需要网络服务不仅仅是大学人员可以看到的,对我们来说计算机并不重要,我的意思是我们不关心它上面的信息,如果它受到损坏就无关紧要。 所以有办法在该计算机上发布服务器? 我认为需要通过computr或类似的东西来连接web服务url –

相关问题