如何在端口 443 上运行 Spring Boot

2024-04-03

我在使用我们的 Spring Boot 应用程序之一时遇到了问题。我们让它在端口 8443 上使用 https 运行,一切正常。现在,我们正在构建与外部支付处理器的集成,它们要求我们在应用程序的端口 443 上有一个回调端点。

一些研究告诉我,部署侦听低于 1024 的端口号的 Spring boot 应用程序是不允许的。我在这个问题上找到的线程通常会说“使用高于 1024 的端口号”,并且发帖人会走 快乐出发。我已经有了这个,需要找出一个使用端口 443 的解决方案。

有人有什么建议吗?我可以通过为回调端点构建 Apache 代理来解决这个问题吗?

我们在同一台服务器上有使用 Apache2 和端口 443 的 Web 应用程序,因此 Boot 应用程序需要与其共存。


好的,我设法以一种非常简单而优雅的方式自己解决了这个问题。在此过程中,我还解决了 Spring boot 应用程序必须使用 URL 中的端口号来调用的问题,这一直困扰着我。

我找到了这个线程:Spring Boot 在 Apache 代理后面嵌入 Tomcat https://stackoverflow.com/questions/25455969/spring-boot-with-embedded-tomcat-behind-apache-proxy

其中,解决方案已经列出来了。我必须激活三个 apache2 mods:

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod headers

我将这些行添加到我的 Apache2 vhost 配置文件中,位于 ServerName 的正下方VirtualHost tag:

SSLProxyEngine on
ProxyPass / https://127.0.0.1:8443/
ProxyPassReverse / https://127.0.0.1:8443/
RequestHeader set X-Forwarded-Proto https
RequestHeader set X-Forwarded-Port 443
ProxyPreserveHost On

8443是Spring Boot应用程序使用的端口号,在server.port财产。

作为奖励,这也意味着我们不再需要在防火墙中打开引导应用程序使用的端口。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在端口 443 上运行 Spring Boot 的相关文章

随机推荐

  • 为什么 C# 不接受带有泛型参数的构造函数要求?

    使用 C 泛型 您可以拥有这样的类 class Foo
  • PHP DateTime 微秒始终返回 0

    在 PHP 5 2 5 中 此代码始终返回 0 微秒 Output root www1 php date test php 2008 10 03T20 31 26 000000 root www1 php date test php 200
  • error.full_messages:属性名称出现两次

    这已经困扰我一段时间了 我的所有模型都会出现此问题 但我将使用其中之一 Quiz 作为示例 测验具有以下验证 validates presence of size style 我正在使用 I18n 并且我的翻译文件中设置了以下内容 这些只是
  • 如何在 JQuery 数据表中的 SAjaxsource 完成后调用 javascript 函数

    我正在使用 JQuery SAjaxsource 如何在 SAjaxsource 完成后调用 javascript 函数 我想在数据表加载完成后更新一个div 请帮助我 Edit document ready function var oT
  • 我如何在 python 中制作自定义错误消息[重复]

    这个问题在这里已经有答案了 在我正在制作的 python 程序中 我希望它只接受整数 如果它得到一个字符串 则说 系统中出现错误 而不是低声抱怨用户无法理解的无意义信息 Use a try except块捕获错误并使用raise声明说出您选
  • 通过 mailto URI 附加文件

    是否可以使用 JavaScript 中的 mailto 重定向来附加文件 像这样的事情 document location mailto recipient subject subject body msg attach file1 zip
  • valgrind 在多线程套接字程序中停止

    我正在使用 valgrind 运行多线程套接字程序 客户端将通过 TCP 向服务器发送请求 然后忙于等待布尔值 当调用服务于服务器响应的回调函数时 将设置该布尔值 一旦收到响应 并且设置了布尔标志 服务器将再次发出请求 并在循环中重复执行此
  • 表格的 CSS 过渡

    我有多个表排成一排 当一个人是selected 它应该展开一列 直到现在隐藏 几时取消选择 它应该慢慢收缩 我尝试使用 CSS 转换 但是当单元格中没有文本时 收缩不起作用 column2 background color ddd widt
  • 如何关闭Flex中的所有弹出窗口?

    我想通过按下按钮来显示图像上的所有弹出窗口 已经弹出并单独关闭 并希望在按下另一个按钮时关闭所有这些窗口 任何帮助表示赞赏 尝试这个 package com devahead utils import flash display Displ
  • Selenium 测试运行太快,没有等待单选按钮被选择

    我有一个 Selenium Grid 和 WebDriver 2 48 2 测试 运行速度太快 大多数情况下 测试会停止 因为在按下按钮之前未选择单选按钮 单选按钮是使用基于 JSON 文件的 JavaScript 设置的 可以在一个部分中
  • cocoapods 同步:ld:找不到框架 DATAFilter,链接器命令失败,退出代码 1

    我正在尝试同步 https github com hyperoslo Sync https github com hyperoslo Sync 在我的 em Xcode iOS Swift 项目中工作 我在 Carthage 框架依赖方面有
  • 当用户平移地图时,iOS 6 中的地图注释不会保持旋转

    真的很想回答这个问题https devforums apple com message 723468 https devforums apple com message 723468 我无法发布详细信息 因为它是关于 iOS 6 的 并且是
  • 如何在某些数据结构中表示奇怪的图

    表示图的一种简单方法是使用以下形式的数据结构 1 2 3 2 1 3 3 1 2 该字典中的键是节点 边由它们连接到的其他节点的列表表示 如果链接不对称 此数据结构也可以轻松表示有向图 1 2 2 3 3 1 我对图论了解不多 所以我要提出
  • 选项 importNotUsedAsValues 已弃用

    有人可以帮我解决这个问题吗jsonfig json为一个精简的项目文件 它说的是importsNotUsedAsValues选项应替换为verbatimModuleSyntax compilerOptions moduleResolutio
  • 使用pyserial(python串口)的二进制数据

    pyserial中的serial write 方法似乎只发送字符串数据 我有像 0xc0 0x04 0x00 这样的数组 并且希望能够通过串行端口发送 接收它们 是否有针对原始 I O 的单独方法 我想我可能需要将数组更改为 xc0 x04
  • div 之间的换行会呈现一个空格。如何从 HTML 中消除它?

    我有以下布局 div style width 100px div style width 50 display inline block div1 div div style width 50 display inline block di
  • 数据切换和数据目标不起作用

    我一直在寻找不同的解决方案 但到目前为止没有一个能帮助我 我的下拉菜单不起作用 因为数据切换和数据目标没有 被识别 至少这就是我认为它不起作用的原因 我似乎找不到解决方案 所以我希望这里有人可以帮助我 这是代码
  • 使用递归在 C 中实现单链表:我做错了什么?

    我试图编写的程序的提示是这样的 创建一个链表和一组操作它的函数 所有循环 必须使用递归来完成 以下功能是 该列表将使用的函数 isempty 如果列表为空则返回true 否则返回true find v 查找某个值并返回其索引 如果不成功 则
  • Rails 4,如何正确配置smtp设置(gmail)

    我正在尝试在 Rails 4 中创建一个联系表单 我在这里进行了一些挖掘 并且能够让大部分内容正常工作 在这里关注 sethfri的工作Rails 4 中的联系表格邮寄程序 https stackoverflow com questions
  • 如何在端口 443 上运行 Spring Boot

    我在使用我们的 Spring Boot 应用程序之一时遇到了问题 我们让它在端口 8443 上使用 https 运行 一切正常 现在 我们正在构建与外部支付处理器的集成 它们要求我们在应用程序的端口 443 上有一个回调端点 一些研究告诉我