这可能是重复的问题。但我尝试了很多解决方案,没有回答对我有用。我正在使用ui-router for angular web app。
我正在使用apache2服务器来提供角度应用程序。我正在使用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中。 它会从网址中删除哈希值,但是当我点击刷新时,它会显示 not found 。任何人都可以帮助我。
答案 0 :(得分:1)
在.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);