Laravel 4和AngularJS在html5Mode中的路由问题

约瑟夫·杜克(JozefDúc)

我正在创建一个使用Laravel 4作为后端和AngularJS作为前端的RESTful应用程序。我想使用来自Angular的路由。

routes.php 在laravel中这样设置(使用一组/ api,但这不是必需的)

Route::any('{all}', function ($uri) {
    return View::make('index');
})->where('all', '.*');

我在Angular的路线是

$routeProvider.
    when('/', {
        templateUrl: 'views/test.html',
        controller: 'homeCtrl'
    }).
    when('/test', {
        templateUrl: 'views/test.html',
        controller: 'homeCtrl'
    }).
    when('/test/:id', {
        templateUrl: 'views/test.html',
        controller: 'homeCtrl'
    }).
    otherwise({
        redirectTo: '/'
    });
 $locationProvider.html5Mode(true);

我定义<base href="/"/>index.php

我的xampp中的DocumentRoot已放入DocumentRoot "C:/xampp/htdocs/laravel/public"(因此Laravel中的公用文件夹)

当我击中localhost/test一切正常。但是,当我尝试访问时localhost/test/1,所有内容都index.php从Laravel视图作为文件加载,如下所示。

在此处输入图片说明

有谁解决这个问题?我是否应该在中创建正则表达式routes.php,以容纳所有(.js,.jpg,...)扩展名(我认为这不是一个好主意)?还是应该更改.htaccess文件?

约瑟夫·杜克(JozefDúc)

我找到了这个问题的解决方案,并将缺少在Laravel中捕获的路线更改为此,一切都很好。

App::missing(function ($exception) {
    return Redirect::to('/#/' . Request::path());
});

问题是

  • html5Mode中的角需要#作为前缀。
  • 如我在问题中所示,Laravel正在返回包含资产的子路线的主页。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

angularjs中的html5Mode问题

来自分类Dev

angularjs中的html5Mode问题

来自分类Dev

IIS 8.5中托管的AngularJS html5Mode路由问题

来自分类Dev

html5mode中的AngularJS路由错误

来自分类Dev

HTML5模式下AngularJS和Laravel 4路由冲突

来自分类Dev

HTML5模式下AngularJS和Laravel 4路由冲突

来自分类Dev

Laravel 4和Nginx中的奇怪路由问题

来自分类Dev

Laravel,AngularJS和CORS的路由问题

来自分类Dev

Laravel问题与路由和HTML表单操作

来自分类Dev

laravel5中的路由问题

来自分类Dev

AngularJS HTML5Mode页面刷新中断了asp.net MVC中的路由

来自分类Dev

启用html5mode的Angular和Express路由

来自分类Dev

流明与AngularJS html5Mode导致重新加载问题

来自分类Dev

Laravel 4和AngularJS-使用路由清理URL

来自分类Dev

html5mode在angularjs中相对href路径出错

来自分类Dev

如何使Angularjs路由与html5mode上的expressJs路由一起使用

来自分类Dev

如何使Angularjs路由与html5mode上的expressJs路由一起使用

来自分类Dev

在laravel 4中路由

来自分类Dev

Laravel 4中的路由参数

来自分类Dev

SEF路由在Laravel 4中

来自分类Dev

AngularJS html5Mode刷新失败

来自分类Dev

路由问题,在 Laravel 中遇到问题

来自分类Dev

Laravel 5:路由可选参数问题

来自分类Dev

Laravel 4 PHP:路由订单问题

来自分类Dev

Laravel 4路由问题

来自分类Dev

AngularJS UI路由器html5mode无法重新加载

来自分类Dev

Web和Api路由的Laravel Auth问题

来自分类Dev

Laravel路由问题

来自分类Dev

Laravel路由问题