2013-08-31 3 views
0

Laravel/Ember.js 앱을 개발 중입니다. Laravel은 클라이언트 측에서 백엔드 프레임 워크와 RESTful 데이터 공급 업체 및 Ember.js의 부분적 역할을 담당합니다.Ember.js pushState 라우터 인계 Laravel route

지금까지 제대로 작동합니다. 그러나 Ember.js가 하위 URL 중 일부를 제어하려고합니다. /members#/edit/1

,

/members/add, /members/edit/1 등 대신 /members#/add을 :

내가 엠버 응용 프로그램을 제공 Laravel에 /members 경로를 가지고 있고 하위 결과의 URL은과 같이 pushState의 엠버/승을 활용하고 싶은 말은 엠버와

이 쉽게 달성 :

App.Router.reopen({ 
    location: 'history', //instead of 'hash' 
    rootURL: '/members' 
}) 

내가 링크를 클릭 할 때 잘 작동합니다.

그러나 페이지를 새로 고침 할 때 Laravel 라우터는 공용 폴더에서 laravel의 index.php를 통해 모든 URL을 제공하려고 시도하는 .htaccess으로 시작됩니다. 여기 Laravel 원래 .htaccess 파일입니다 : 내가 재 작성 아파치 URL에 전문가는 아니지만

<IfModule mod_rewrite.c> 
    Options -MultiViews 
    RewriteEngine On 

    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 
</IfModule> 

, 내가해야 할 일을 /members 경로로 다시 (.. /members/add, /members/view 등) /members 다음 모든 것을 다시 작성 .htaccess 말씀입니다 Ember.js가 적절하게 리디렉션합니다.

내가 이런 일을하려고 하였지만 작업을 할 수 없습니다 :

<IfModule mod_rewrite.c> 
    Options -MultiViews 
    Options +FollowSymLinks 
    IndexIgnore */* 
    RewriteEngine On 

    RewriteCond %{REQUEST_URI} /members 
    RewriteRule (.*) members 

    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 
</IfModule> 

URL 재 작성의이 주제에 어떤 도움에 감사드립니다. 감사!

+0

와우. 엠버 (ember)를 몰랐습니다. js는 역사를 매우 쉽게 푸쉬 상태로 만듭니다 .... 오늘 새로운 것을 배웠습니다. 고마워요. (제 의견은 도움이되지 않지만 감사하고 싶습니다.) – itachi

+0

그래, 걱정 마. 다른 경로가없는 단일 페이지 앱에 유용합니다. – kernelpanic

+0

이 질문에 대한 답을 찾을 수 있었습니까? – edpaez

답변

1

는 살펴 : 그것은 나를 위해 일하고

enter image description here

!

안녕!