대부분의 클래스가 표준 controller/action
스타일로 호출되도록 경로를 설정했습니다. 그러나 프런트 엔드의 경우 사용자가 호출되는 작업을 보지 못하게하므로 모든 프런트 엔드 페이지에는 자체 컨트롤러가 있고 인덱스 작업을 사용합니다. 다음은 부트 스트랩에 설치된 라우터입니다.Kohana 3.2 라우팅 문제
Route::set('normal', '<controller>(/<action>(/<arguments>))',
array(
'arguments' => '.*'
))
->defaults(array(
'controller' => 'admin',
'action' => 'index',
));
Route::set('default', '(<controller>(/<arguments>))',
array(
'arguments' => '.*',
))
->defaults(array(
'controller' => 'home',
'action' => 'index',
));
저는 현재 3 개의 프런트 엔드 페이지, home, about_us 및 서비스가 있습니다. URL을 통해 인수를 전달하지 않으면 모두 잘 작동하지만 URL을 통해 인수를 인수로 전달하려고하면 문제가 발생합니다. 서비스에서는 페이지를 표시하는 데에만 action_index()
이 있으며 인수를 확인하고 인수를 기반으로 결과를 표시합니다. 보통 그것은 단지 첫 번째 경로를 사용
Kohana_HTTP_Exception [ 404 ]: The requested URL services/1 was not found on this server.
: 내가 인수로 1 통과 /services/1
로 이동하려고하지만 경우에 나는이 404 오류가 발생합니다. 일단 작업을 찾지 못하면 두 번째 경로를 사용해도 작동하지 않습니다. 경로의 순서를 바꾸면 작동하지만 첫 번째 컨트롤러를 사용하는 다른 모든 클래스는 모든 액션이 인수로 action_index()
으로 전달되므로 작동을 멈 춥니 다.
어떻게하면됩니까? 첫 번째 경로가 작동하지 않는 이유는 Kohana가 두 번째 경로로 이동하지 않는 이유는 무엇입니까?
이 syntanx보십시오 :'경로 : 설정 ('정상', '(/ (/ (/ )))','와'경로 : : set ('default', '(/ (/ ))', ' –
DanR