2013-06-01 3 views
2

사용자 인증을 위해 confide 패키지에 문제가 있습니다.Laravel 4 - Duplicate Url

내 문제는 ... 내가 로그인 할 때, 내가 중복으로 리디렉션하고있는 URL 때문에 notFoundHttpException를 throw 로그인 페이지로 이동하고 있다는 것이다은 다음과 같습니다

http://www.mypage.dev/http://www.mypage.dev 

내 가상 호스트는 이 여기

https://github.com/daylerees/laravel-website-configs/blob/master/apache.conf 

이런 일이 만드는 무엇처럼 설정?

--- 편집 ---

더 많은 경험을 수집 ...

다음과 같은 리디렉션을 사용하는 경우이 문제가 발생 것 같다 :

return Redirect::action('[email protected]') 

내가 사용하는 경우 :

return Redirect::to('/action') 

모든 것이 좋습니다. 이 같은

내 경로보기 :

Route::get('/action', '[email protected]'); 
+0

어떻게 리디렉션을 수행합니까? 관련 코드 중 일부를 표시하십시오. –

+0

실제로 리디렉션을 직접 구현하지는 않았지만 confide 패키지 (https://github.com/Zizaco/confide)를 사용하고 있습니다. Laravel 3에서도 이러한 현상이 발생하는 것으로 보았습니다. 데비안 VM (가상 박스)에서 자체 가상 호스트로 laravel 4를 실행 중 그렇지 않으면 표준 laravel 4 설정 절차를 따릅니다. – cw24

+0

이것은 다른 지점에서 다시 나타났습니다. 나는 패턴을보기 시작했다. 이번에는 Redirect :: action ('Controller @ create', array ('types'=> $ types)) -> withErrors ($ errors); 액션으로 리디렉션 할 때 발생합니다. /http://www.mypage.dev/create로 이동하면 브라우저가 http://www.mypage.dev/http://www.mypage.dev/create가됩니다. – cw24

답변

0
Route

Route::get('action', '[email protected]'); 

현재 경로의 정의는 현재 URL의 끝에 /action을 추가 변경

.

0

filter_var($url, FILTER_VALIDATE_URL)에 따르면 URL이 http://newsletters_app.dev이므로 밑줄로 인해 잘못되었습니다. 이 때문에 HTML::link()은 중복 된베이스를 생성하고 있습니다. 해결책은 단순히 URL에서 밑줄을 제거하는 것입니다.