目前我正在使用JBoss 7.1.0并修改了 standalone.xml 文件,以便通过 socket-binding-group 下的套接字绑定提供HTTPS连接。
<socket-binding name="http" port="8080"/>
<socket-binding name="https" port="8089"/>
我在子系统xmlns =“urn:jboss:domain:web:1.1 相关标签下添加了连接器
<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" enable-lookups="false" secure="true">
<ssl name="foo-ssl" key-alias="foo" password="somepassword" certificate-key-file="../standalone/configuration/foo.keystore" protocol="TLSv1"/>
</connector>
当我通过此命令运行服务器时:./ standalone.sh,加载了webapp,我可以在https://someaddress:8089/myapp
然后我开始创建一个用于管理jboss的linux服务。步骤如下所示:Run JBoss as a Linux Service
我可以启动和停止服务,但现在可以通过http(http://someaddress:8080/myapp
)在8080端口上使用webapp。如果我尝试访问https://someaddress:8089/myapp
,我会在浏览器中显示“此网页不可用”。
我不确定是什么问题,但似乎当我将其作为服务启动时,它会在默认端口上运行。
感谢您的时间。
答案 0 :(得分:0)
最后找到问题所在。感谢Federico要求输出日志文件。问题在于standalone.xml中的SSL文件路径。这是错误:
<ssl name="foo-ssl" key-alias="foo" password="mypassword" certificate-key-file="../standalone/configuration/foo.keystore" protocol="TLSv1"/>
手动运行时,相对路径运行良好,因为它会回溯bin文件夹并找到独立目录。但是,当它作为一项服务开始时,它不起作用。解决方案是将其设置如下:
<ssl name="foo-ssl" key-alias="foo" password="mypassword" certificate-key-file="${jboss.server.config.dir}/foo.keystore" protocol="TLSv1"/>