我正在使用Angular 2并在生产时将distots.txt添加到我的dist文件夹的根目录(用于搜索引擎优化目的)
但该文件无法访问,因为url https://myrandomsite.com/robots.txt
只是重定向到我的PageNotFoundComponent,因为我的路由设置如何。
如何允许访问robots.txt"通常"并阻止我的Angular 2路由配置触发?
编辑:我正在使用带有Firebase后端的Angular2前端。
答案 0 :(得分:1)
这不是Angular问题,它是你的网络服务器之一。
您的网络服务器不应将网址重定向回现有文件回/index.html
。
请参阅此IIS示例配置以使用规则重定向:
<rule name="AngularJS" enabled="false" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/index.html" />
</rule>
如果文件,目录或网址以/api
开头,
<强>更新强>
使用firebase,您应该阅读:https://firebase.google.com/docs/hosting/url-redirects-rewrites