深层链接:刷新会导致崩溃

时间:2019-04-23 08:59:24

标签: angular apache dart deep-linking angular-dart

我已经开发了angular-dart应用程序,并将其部署到我的apache2服务器上的domain.tld / subdirectory/。

我创建了一个.htaccess文件,并使用基本的href =“ / subdirectory /”配置了index.html。

如果我加载根目录或更高级别(domain.tld / subdirectory / home),一切正常。我也可以访问深层链接页面(domain.tld / subdirectory / action / 3),但是如果刷新页面,则会收到空白的index.html屏幕。如果我在Firefox中打开控制台,则会告诉我该页面尝试打开:  获取https://domain.tld/subdirectory/action/main.dart.js 哪个当然行不通。

main.dart.js位于domain.tld / subdirectory /中,但客户端认为它位于action-子目录中。怎么了?

<IfModule mod_rewrite.c>
  Options Indexes FollowSymLinks
  RewriteEngine On
  RewriteBase /subdirectory/
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . index.html [L]
</IfModule>
<!DOCTYPE html>
<html>
  <head>
    <title>Page</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="styles.css">
    <link rel="icon" type="image/png" href="favicon.png">
    <script defer src="main.dart.js">
    <base href="/subdirectory/">
  </head>
  <body onload="">
    <my-app>Loading...</my-app>
  </body>
</html>

0 个答案:

没有答案