2

这可能是重复的问题。但我尝试了很多解决方案,没有答案对我有用。我正在将 ui-router 用于 Angular Web 应用程序。我正在使用 apache2 服务器为 angular 应用程序提供服务。我正在使用 Ubuntu。我的项目代码位于文件夹 \var\www\html\myapp 中,这里myapp是我的应用程序文件夹。我已经尝试了以下
1添加<base href="/myapp/">到头部标签
2添加$locationProvider.html5Mode(true);$locationProvider.html5Mode({ enabled: true, requireBase: false}); (分别尝试)
3添加.htaccess具有以下内容的文件

Options +FollowSymLinks

<ifModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !index
    RewriteRule (.*) index.html [L]
</ifModule>

以及我从谷歌获得的 .htaccess 文件的一些其他内容以提供路径。
我尝试将 .htaccess 文件放在 \var\www\html\ 以及 \var\www\html\myapp 中。它会从 url 中删除哈希,但是当我单击刷新时,它会显示not found。谁能帮帮我吗。

4

1 回答 1

2

.htaccess在下面的文件中试试这个\var\www\html\myapp

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.html [L]

index.html头部:

<base href="/myapp/">

在应用程序配置中:

$locationProvider.html5Mode({
  enabled: true,
  requireBase: false
});

/* Records full path */
$analyticsProvider.withBase(true);
于 2017-02-16T07:34:32.267 回答