我无法让Spring Boot站点对Azure Web实例进行响应。我已遵循Java应用程序说明和上传说明。看来IIS服务器正在接收请求,但是战争中的servlet没有响应。根据文档,有一些陷阱。特别是,应将web.config部署到wwwroot并指定java路径以及转发端口。我相信我已经涵盖了这些基础-我的web.config粘贴在下面。
我确实尝试过从市场上部署tomcat服务器,但效果很好。当我替换war文件和web.config时,spring boot应用程序无法正常工作。
一条有趣的信息是,HTTP_PLATFORM_PORT环境变量似乎未定义。
应用设置:
Azure控制台信息(Env变量和Web.config):
D:\home\site\wwwroot
> dir
D:\home\site\wwwroot
Volume in drive D is Windows
Volume Serial Number is 789E-197B
Directory of D:\home\site\wwwroot
03/01/2016 02:14 AM <DIR> .
03/01/2016 02:14 AM <DIR> ..
02/29/2016 08:15 PM <DIR> bin
03/01/2016 01:49 AM 8,771,899 web-0.0.1-SNAPSHOT.war
03/01/2016 02:10 AM 496 web.config
03/01/2016 02:08 AM 496 web.custom.config
03/01/2016 01:54 AM 4,868 web.tomcat.config
03/01/2016 02:14 AM <DIR> webapps
> echo %java_home%
D:\home\site\wwwroot
D:\Program Files\Java\jdk1.8.0_60
> echo %http_platform_port%
D:\home\site\wwwroot
%http_platform_port%
> cat web.config
D:\home\site\wwwroot
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
</handlers>
<httpPlatform processPath="%JAVA_HOME%\bin\java.exe"
arguments="-Djava.net.preferIPv4Stack=true -Dserver.port=%HTTP_PLATFORM_PORT% -jar "%HOME%\site\wwwroot\web-0.0.1-SNAPSHOT.war"">
</httpPlatform>
</system.webServer>
</configuration>
那不应该是可执行的JAR而不是WAR吗?您可以仅安装JDK 8来运行Spring Boot JAR,但是需要Java EE应用服务器才能将WAR部署到其中。
我不知道web.config文件是什么。我使用Cloud Foundry。我需要的只是一个JAR,一个用于配置的.yml文件和一个JDK。Spring Boot JAR应该在其中包含整个应用程序及其依赖项。我使用Maven创建胖JAR。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句