簡體   English   中英

“添加到主屏幕”圖標在 iOS 13 和 HTTPS 上不起作用

[英]“Add to home screen” icon not working on iOS 13 with HTTPS

在 iOS 13 中,“添加到主屏幕”圖標不再填充,並且仍然是頁面的屏幕截圖:

iOS 13 上 iPad 的圖像: https://i.ibb.co/StxckYP/20191017-12554.jpg4.jpg

使用13之前的iOS,圖標創建正常:

iPod 上 iOS 12 的圖像: https://i.ibb.co/JqVFZgd/20191017-125423.jpg

這似乎是一個證書問題,因為它通常在 HTTP 上填充。 它還適用於全球 CA 簽名證書 (GoDaddy)。 使用私有 CA 簽名證書則不會。

在這兩種情況下,服務器都是 IIS。 頁面在 HTTPS 上正常工作。

圖標的元標記:

<link id="apple-touch-icon" rel="apple-touch-icon" href="resources/images/app-test114.png">

創建 CA 的批處理腳本:

openssl req -x509 -newkey rsa:1024 -sha256 -days 3650 -nodes -keyout ca.key -out ca.crt -config ca.conf
openssl pkcs12 -export -out ca.pfx -inkey ca.key -in ca.crt
pause

CA的配置文件:

[req]
distinguished_name=information
prompt=no
x509_extensions=v3_ca

[information]
C=...
ST=...
L=...
O=...
OU=...
CN=...

[v3_ca]
subjectKeyIdentifier=hash
extendedKeyUsage=critical,serverAuth,clientAuth
basicConstraints=CA:true
keyUsage=cRLSign,keyCertSign,digitalSignature,nonRepudiation,keyEncipherment,dataEncipherment,keyAgreement,keyCertSign,cRLSign

用於創建 web 托管證書的批處理腳本:

openssl req -newkey rsa:1024 -sha256 -nodes -keyout cert.key -out cert.csr -config cert.conf
openssl x509 -sha256 -req -in cert.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out cert.crt -days 365 -extfile cert.conf -extensions extensions
openssl pkcs12 -export -out cert.pfx -inkey cert.key -in cert.crt
pause

證書配置文件:

[req]
distinguished_name=information
prompt=no

[information]
C=...
ST=...
L=...
O=...
OU=...
CN=...

[extensions]
subjectAltName=@alt_names

[alt_names]
DNS.1=localhost
IP.1=192.168.77.132

在獲得正確的證書之前,當我不得不允許某個 URL 以不安全的 https 連接打開時,行為是相同的。 修復證書后,圖標會正常填充。 隨着 iOS 13 的更新,圖標停止正常工作。

有什么辦法可以找出圖標沒有加載的原因嗎?

Hudgi 的鏈接解決了這個問題。

https://support.apple.com/en-us/HT210176

這是 2048 位所需的密鑰大小,而我的密鑰是 1024 位。 該頁面以其他方式工作的原因是它已被緩存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM