如何提供聊天应用程序嵌入的静态图像?

问题描述 投票:0回答:1

对于网络开发人员来说这可能是一个微不足道的问题,但我就是不能 似乎在 Google 或 Stack Overflow 上找到了提示。

我有一个由我的网络服务器静态提供的图像文件(png 或 jpg) (带有 nginx 的 https)。我希望将此图像嵌入到聊天应用程序中, 例如,当我发送此图像的链接时,Discord。

如果我拍摄由谷歌提供的图像,那么它将显示该图像 的链接。 例子: https://firebase.google.com/static/images/homepage/home-icon-build.png

我尝试从 google 获取图像并将其提供给我的 nginx 服务器。 聊天应用程序仅显示链接而不显示图像,但如果我单击链接:

https://my.server.net/profilePictures/home-icon-build.png

然后它将按预期在浏览器中打开图像。

如果有任何提示/技巧可以帮助我,我将非常感激 将静态提供的图像嵌入到聊天应用程序中。

nginx web-development-server
1个回答
0
投票

我终于解决了这个问题!

如果你想看看你是否犯了我犯的同样的错误,那么请访问:

https://www.digicert.com/help/

现在您可以检查您站点的证书了。

如果显示类似:

TLS 证书不受信任 该证书未由受信任的机构签名(根据 Mozilla 的根存储进行检查)。如果您从受信任的机构购买了证书,则可能只需要安装一个或多个中间证书。请联系您的证书提供商以获取针对您的服务器平台执行此操作的帮助。

那么您遇到的问题与我相同,并且很容易解决!

事实证明,问题在于我如何提供证书。 我的证书是由 Let’s Encrypt 颁发的,我还需要在我的证书的钥匙串中提供 Let’s Encrypt 使用的 R3 和 X1 证书。

您可以做的是将您的证书与 Let’s Encrypt 的两个证书连接起来。

只需将 Let's Encrypt 证书粘贴到您的证书下方即可:

-----BEGIN CERTIFICATE-----
MIIFYDCCBEigAwIBAgIQQAF3ITfU6UK47naqPGQKtzANBgkqhkiG9w0BAQsFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTIxMDEyMDE5MTQwM1oXDTI0MDkzMDE4MTQwM1ow
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
.........
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
gIQQAF3ITfU6UK47naqPGQKtzANBgkqhkiG9w0BAQsFADAACVSDFRFEHELELHELH/
NpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMTMSQwIgYDVQQKExtEaWdpdGFsIF
MB4XDTIxMDEyMDE5MTQwM1oXDTI0MDkzMDE4MTQwM1owDkRTVCBSb290IENBIFgz
BAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2VhTzELMAkGA1UEBhMCVVMxKTAnBgNV
.....
-----END CERTIFICATE-----

好消息!如果您使用 certbot,那么您根本不必这样做! 只需使用 certbot 自动生成的 fullchain.pem 即可。

只需更改 nginx.conf 中的证书即可:

ssl_certificate       /etc/letsencrypt/live/your.domain.com/fullchain.pem;

我真的希望这对某人有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.