【发布时间】:2019-01-16 15:30:47
【问题描述】:
我制作了一个带有 nodejs 后端的渐进式 Web 应用程序。当我在我的服务器上部署它时,chrome 不会将该应用程序识别为 PWA。所有其他浏览器都可以(firefox,opera ...)。这意味着我没有收到“下载”提示或我的应用的全屏视图。
当它部署在 heroku 上时,它运行良好。我买了主机,现在它不起作用。主要区别在于应用程序现在在端口 8443 上运行,因为端口 433 被网络服务器使用。我在 google 上查看,发现 chrome 只能识别在端口 433 上运行的 PWA。我问了帮助台,他们告诉我使用 .htaccess 文件。我以前没有使用过它,它似乎无法解决我的问题。它会自动重定向到端口 8443,但 Chrome 仍然无法将其识别为 PWA。这是我使用的 .htaccess:
SetEnvIf Request_URI "^(.*)" PORT=8443
RewriteEngine On
RewriteBase /
# CORS
Header add Access-Control-Allow-Origin "*"
# HTTPS
RewriteCond %{HTTPS} !=on
RewriteCond %{ENV:HTTPS} !=on
RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# PORT
RewriteCond %{SERVER_PORT} !^%{ENV:PORT}$
RewriteRule ^(.*) https://%{HTTP_HOST}:%{ENV:PORT}%{REQUEST_URI} [L,R=301]
# RPROXY
# RewriteRule ^(.*) http://localhost:${ENV:PORT}/$1 [P]
我想知道问题是否真的发生是因为应用程序在 8443 上运行,或者是否还有其他我不知道的问题。
谢谢!
【问题讨论】:
标签: google-chrome progressive-web-apps