0

我做了以下工作:

  1. 我创建了一个下一个JS按照概述的说明使用在里面NextJS文档.

  2. 在此之后,我使用Firebae应用程序托管(公共预览),按照Firebase文档.

  3. 最后,我连接了一个自定义域(在GoDaddy上购买)遵循教程,C自定义域文档(注意官方文件中未提及任何GoDaddy的特殊性)。

这一切都很好,除了一件事,那就是http协议->https(https)重定向.

我找不到任何资源解释这将如何适用于专门部署在Firebase应用程序托管设置上的NextJS应用程序。有一些资源提到了如何在遗产上实现这一点Firebase托管,以及一些关于如何添加此类内容的建议关于中间件,但两者都不适用于我(在后者中,我的中间件似乎被完全忽略):

if(request.headers.get(“x-forwarded-proto”)!==“https”){return下一次响应.redirect(`https://${request.headers.get('host')}${requist.nextUrl.pathname}`,301)}

因此,建议采用什么方法来确保用户访问时http://example.com它被重定向到https://example.com对于部署在Firebase应用程序托管上的NextJS应用程序,该域在GoDaddy.com上购买?

  • 1
    更新:我恢复使用正常的Firebase Hosting,没有问题。可能与应用程序托管的公共预览阶段有关。
    – WJA公司
    评论 6月14日21:11
  • 你在godaddy自定义域上获得ssl了吗? 评论 6月19日12:59
  • 你尝试过GoDaddy重定向功能吗godaddy.com/help/…? 评论 6月19日14:05

2个答案2

重置为默认值
2

我可以复制你的问题。

Firebase Hosting将所有域重定向到HTTPS,Firebase App Hosting也会重定向hosted.App域(因为.App被强制使用HTTPS)。自定义域似乎没有重定向。

最简单的解决方案是将服务用作CloudFlare公司并创建一个重定向规则那样。正如您所提到的,另一个解决方案是同时使用常规Firebase Hosting。

您可以为Firebase发布功能建议在这里.

1
  • 1
    是的,我收到了Firebase支持部门的答复,表示这一问题正在解决。
    – WJA公司
    评论 7月1日19:24
0

从godaddy购买ssl证书。

更新DNS记录后,应用程序托管可能需要数小时才能为域提供SSL证书。

您可以使用浏览器的安全工具查看此证书。在设置域时,您可能会看到无效的证书,或者在连接到域时出现问题。这是过程的正常部分,将在域的证书可用后解决。

注意:Firebase App Hosting会根据需要为自定义域自动重新生成SSL证书。

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.