【发布时间】:2016-10-29 12:16:54
【问题描述】:
我有一个实现了基本路由的 Angular 2 rc-2 应用程序。路径是 /path1,这是默认路径和 /path2。主路径 / 重定向到 /path1。当我在本地(lite-server)运行它时,一切正常。我设法将此应用程序部署到 Azure Web 应用程序。该应用程序可以正常工作,但是如果我在/path1 或/path2 中刷新页面,我会收到此错误:The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
一种可能的方法是实现 url 重写。我在我的项目中添加了一个 web.config 文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<!-- check if its path1 url and navigate to default page -->
<rule name="Path1 Request" enabled="true" stopProcessing="true">
<match url="^path1" />
<action type="Redirect" url="/index.html" logRewrittenUrl="true" />
</rule>
<!-- check if its path2 url and navigate to default page -->
<rule name="Path2 Request" enabled="true" stopProcessing="true">
<match url="^path2" />
<action type="Redirect" url="/index.html" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
在这种情况下,我可以进行刷新而不会收到此错误消息。但是任何刷新都会将我重定向到默认 URL。我从/path2 刷新,它会将我重定向到/path1(默认网址)。
有什么改进刷新的想法吗? :)
【问题讨论】:
标签: angular azure angular2-routing