运行 Apache 上的 AngularDart

Running AngularDart on Apache

我的 Angular Dart 站点 运行 可以提供酒吧服务。我更愿意 运行 它与 Apache 一起使用。当我输入 url jazzcat.loc/index.html 时,出现以下浏览器错误:

GET http://jazzcat.loc/packages/browser/dart.js index.html:22 
GET http://jazzcat.loc/packages/polymer/polymer.dart package:polymer/polymer.dart:1 
An error occurred loading file: package:polymer/polymer.dart index.html:22 
GET http://jazzcat.loc/packages/angular2/platform/browser.dart package:angular2/platform/browser.dart:1 
An error occurred loading file: package:angular2/platform/browser.dart
index.html:22 GET http://jazzcat.loc/packages/jazzcat/app_component.dart package:jazzcat/app_component.dart:1 
An error occurred loading file: package:jazzcat/app_component.dart favicon.ico:1 
GET http://jazzcat.loc/favicon.ico 404 (Not Found)

站点的虚拟主机条目是:

<VirtualHost *:80>
  ServerName jazzcat.loc
  DocumentRoot /Volumes/Data/htdocs/jazzcat/web

  <directory /Volumes/Data/htdocs/jazzcat/web>
    Allow from all
    Options -MultiViews
    Require all granted
  </directory>
</VirtualHost>

没有 .htaccess 文件

这是index.html:

<!DOCTYPE html>
<html>
  <head>
    <title>Jazz Cat</title>
    <script>
      window.Polymer = window.Polymer || {};
      window.Polymer.dom = 'shadow';
    </script>

    <!-- For testing using pub serve directly use: -->
    <base href="/">
    <!-- For testing in WebStorm use: -->
    <!-- base href="/dart/web/" -->

    <link href="master.css" rel="stylesheet" type="text/css" />
    <script defer src="main.dart" type="application/dart"></script>
    <script defer src="packages/browser/dart.js"></script>
  </head>
      <my-app>Loading...</my-app>
</html>

我也试过使用

<base href="/dart/web/"> 

也报错了。我正在 Chromium 浏览器中进行测试。

我在这里看到了关于路由的问题和答案。它们似乎适用于 index.html.

以外的路由

AFAIK pub serve 意味着在开发过程中使用,如果您想使用 apache 来为您的应用程序提供服务,您可能需要使用 pub build 将您的应用程序转换(和优化)为常规 html+javascript 应用程序,here you might find more information.