带有 html5Mode 的 Angular 路线在重新加载后给出“未找到”页面

2023-12-14

我制作了一些 Angular 路线,如下面的代码所示。

app.config(function($routeProvider, $locationProvider, $provide) {
    $routeProvider
    .when('/', {
         templateUrl: 'home.html',
         controller: 'AppCtrl'
    });
    .when('/portfolio', {
        templateUrl: 'portfolio.html',
        controller: 'AppCtrl'
    })
    $provide.decorator('$sniffer', function($delegate) {
         $delegate.history = historyCompatCheck();
         return $delegate;
    });
    $locationProvider.html5Mode(true);
});

这工作正常,在我将基本 href 设置为“/”后,它接受了带有“/portfolio”href 的锚点,但是当我转到“http://url.com/portfiolo“或者当我在投资组合路线上时尝试重新加载页面,这会给我一个服务器错误。我可以对此做些什么吗?

提前致谢。


我自己解决了这个问题..你总是需要在项目的根目录中创建一个 .htaccess 文件。包含以下内容:

 <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
 </IfModule>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有 html5Mode 的 Angular 路线在重新加载后给出“未找到”页面 的相关文章

随机推荐