如何配置Polymer版本,以便将我在Windows上构建的应用程序部署到运行NGINX的Raspberry Pi(在子目录中)?
我无法直接在我的Raspberry Pi上安装polymer-cli
,因为chromedriver
(polymer-cli
需要)仅适用于64位Linux,官方Raspian OS目前只有32位
所以我在我的Windows机器上安装了polymer-cli,并根据https://www.polymer-project.org/3.0/start/toolbox/set-up创建了我的第一个Polymer应用程序,我还创建了新视图页。
我现在可以使用polymer serve
(在Windows计算机上的浏览器中正确显示应用程序)运行应用程序,并使用polymer build
进行构建。现在我想部署,所以我将build
目录(包含三个构建的变体,es5-bundled
,es6-bundled
和esm-bundled
)复制到NGINX根目录的子目录中, /var/www/html/polymer/build
。
点击我的浏览器并指向http://<raspberrypi-ip>/polymer/build/esm-build
我看到两个错误。
src="node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js"
中的src="src/my-app.js"
和index.html
给出了404.我找不到如何配置polymer-cli来更改这些内容,并且仍在Windows中提供有效的应用程序,因此我手动添加polymer/default/
中的index.html
个http://<raspberrypi-ip>/polymer/esm-build
。
现在我的浏览器中出现了灰色页面,没有其他错误信息...
转到我的手机浏览器并输入相同的网址Oops you hit a 404. Head back to home
,我实际上看到了我的应用以及http://<raspberrypi-ip>/new-view
链接。在该链接后,我访问了我的应用程序,这似乎正在运行 - 但现在网址为try_files
。
我还没有运气NGINX server {
...
location /polymer/default {
try_files $uri /polymer/default/index.html =404;
}
}
...
rootPath
编辑:在Serving Polymer App to a /path not at root我发现我还需要在index.html中调整http://<raspberrypi-ip>/polymer/esm-build/index.html
。但是,如果我将浏览器指向rootPath
...
另外,有没有办法引用上面手动编辑的<script src="">
代码中的having
?
这是我第一次遇到Polymer和NGINX,所以任何指针都会受到赞赏。