2017-12-18 9 views
1

CodeIgniter 사이트를 설정했지만 기본 라우팅 만 작동하는 것 같습니다.CodeIgniter 라우팅이 서브 디렉토리에서 작동하지 않습니다.

전체 사이트의 하위 디렉토리로 설정해야합니다. 따라서 http://localhost/subdir이 기본 URL입니다. 기본 라우팅과 함께 작동하는 것 같습니다.

요청 된 URL/하위 디렉터리/사용자/로그인이 서버에서 찾을 수 없습니다 : 로그인, 로그 아웃, 내가 일하는 것이 http://localhost/subdir/users/login을 기다리고 있었다 그래서 등록하지만 난 얻을 -

나는 다음과 같은 방법으로 사용자의 컨트롤러를 추가 한 . Apache/2.4.25 (Win32) OpenSSL/1.0.2k PHP/5.4.44 서버 at apps.mediaforce.co.uk 포트 80

내 경로 파일은 매우 기본이므로 새로운 경로를 추가하려고했습니다. 사용자 컨트롤러하지만 아무런 차이가 없습니다.

$route['users/login'] = 'subdir/users/login'; 
$route['default_controller'] = 'welcome'; 
$route['404_override'] = ''; 
$route['translate_uri_dashes'] = FALSE; 

나는 어디로 가고 있습니까?

답변

2

경로에 subdir을 포함 할 필요가 없습니다.

따라서 다음에 경로에 $route['users/login']를 업데이트

$route['users/login'] = 'users/login'; 

편집 1 : 루트에

가 존재하고 그 안에 다음과 같은 내용을 저장 doesnot 경우 .htaccess 파일을 생성 URL에서 index.php을 삭제하려면

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule .* index.php?/$0 [PT,L] 
+0

안녕하세요 - 다음 주소로 변경했습니다 : $ route [ 'users/login'] = 'users/login'; 여전히 동일한 메시지가 표시됩니다. 요청한 URL/subdir/users/login을이 서버에서 찾을 수 없습니다. – chilluk

+0

@chilluk 작동 했습니까 ?? –

+0

컨트롤러 이름과 메소드 이름을 다시 확인하십시오. –