当前位置: 首页 > 面试题库 >

html5Mode的角路由重新加载后显示“未找到”页面

姜阳
2023-03-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>


 类似资料:
  • 本文向大家介绍AngularJS中重新加载当前路由页面的方法,包括了AngularJS中重新加载当前路由页面的方法的使用技巧和注意事项,需要的朋友参考一下 这个问题同样困扰我很久,网上的回答五花八门,全都不能解决;终于在网上找很久,看到某大神的解决办法,整理作此分享;使用ui-router重新加载当前页面的问题。(ui-router版本需要是0.2.14以上的) 用angular做项目,会碰到需要

  • 在我的应用程序中,用户登录后我有一个主页和一些其他页面。问题是,当我在其中一个页面中刷新页面时,它会再次将我发送到主页。这是我的路线: 应用程序组件具有路由器出口 那么,我期待什么呢?首先,如果我是我的“列表”页面()并且我刷新了这个页面,它应该留在那里。在那一页。但现在它将我重定向到本地主机:4200/home。当然,当我单击一个列表项时,它应该将我发送到本地主机:4200/detail/ite

  • 问题内容: 我正在从JSF应用程序发送电子邮件。我需要它,以便当我发送电子邮件时,显示FacesMessage确认操作,然后浏览器重新加载到同一页面。我的代码显示了面孔,但没有重新加载同一页面。 这是我尝试过的,此代码重新加载页面,但未显示FacesMessage。 这是我发送电子邮件页面的代码: 请帮忙 问题答案: 如果要跨重定向保留,则应在对象上设置为。该范围是JSF2推出了新的范围。范围(和

  • 不确定我是否做对了一切。但问题是:当我从延迟加载的模块导航到组件的某些子路由时,它根本不加载。它从延迟加载模块重新加载主组件。 app-routing.component.ts planet-detector-routeting.module.ts 所以在上面的例子中,当你输入“http://localhost:4200/planet-detector/first”时,它会加载DetectorCo

  • 我有我的如下: 当我导航到时,它将加载正确,但是,当我输入或或时,它不会加载相关模块,而是加载了自动关闭。 我怎样才能解决这个问题?

  • 问题内容: 我有一个应用程序,它使用一个ng-view和多个控制器和视图。如果我浏览根目录,例如:www.domain.com,则一切正常。除非我按Ctrl +R(刷新),否则会显示404错误页面未找到。例如:刷新此页面给我错误。http://domain.com/item/1/。 但是,如果我使用hashbang访问页面,则它可以工作。例如:http://domain.com/#!/item/1