在我理解Polymer的过程中,我决定尝试构建一些初学者项目。
我的第一次尝试涉及Polymer CLI。我选择基于抽屉应用模板制作应用。我没有使用polymer build
构建问题,也没有使用polymer serve
运行演示时遇到问题。
但是,在两个构建目录之一上运行Python Web服务器时遇到了一些问题。运行Python Web服务器时,应用程序似乎运行没有问题,直到我在浏览器上点击刷新。然后它返回一条关于无法找到'/ view2'的错误消息;只有在网站根目录刷新才有问题。
我尝试将同一个应用程序部署到Apache Web服务器。在任何地方刷新的地方都会发生类似的问题,但Web应用程序的第一页会导致问题。
然后我尝试了Polymer Starter Kit(在某些方面似乎无法从Polymer项目网站的其余部分访问)。通过适当的gulp命令,我没有遇到任何问题,也没有任何预览问题。然后我尝试在构建结果上运行Python Web服务器,并在各种网页上进行刷新。这次刷新没有任何问题。
此时可能很容易说Polymer CLI有问题,但我想绝对确定在部署CLI应用程序的过程中我没有犯任何错误。
互联网上的资源非常少,能够以清晰简洁的方式解释如何将Polymer应用程序部署到生产级Web服务器。
如果我确实犯了错误,请告诉正确的程序。如果我没有犯错,请告诉我。
答案 0 :(得分:2)
Apache add file .htaccess
<ifModule mod_rewrite.c>
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.html
</ifModule>
答案 1 :(得分:1)
您需要在&#34; app-location&#34;上定义 use-hash-as-path 选项。组件,然后您的网址必须包含带有示例here的here解释的哈希(#)符号。
<app-location route="{{route}}" use-hash-as-path></app-location>
<a name=component href="#/component">Component</a>
&#13;
答案 2 :(得分:0)
对于Polymer 2.0 -
执行polymer build --bundle
并从服务器的根目录服务,所有资源链接都是绝对的。
This polymer page讨论了构建聚合物的所有不同方法,也可能有一些用处。
修改 - 强>
同时打开index.html文件并查看第21行到第25行。我相信,在从静态主机提供服务时,您可以指定应用程序的根目录。因此,您将构建捆绑版本,然后将build/default/
的内容复制到您所服务的位置。