2012-10-24 2 views
1

나는이 부분에 힘든 시간을 보내고 있습니다. 글쎄, 전체 경로가 http://localhost/CodeIgniter_2.1.3/index.php 인 codeigniter를 사용하여 로그인 페이지를 만들었고 .htaccess를 사용하여 http://localhost/login으로 다시 작성됩니다. 잘 작동하지만 문제는 성공적으로 로그인하고 페이지가 redirect ('next_page')를 사용하여 다음 페이지로 리디렉션 된 후입니다. URL은 http://localhost/next_page 대신 http://localhost/CodeIgniter_2.1.3/index.php/next_page이되므로 나는 또한 그 부분에 대한 RewriteRule의 생성 :URL codeigniter에서 다시 작성하면 로그인 후 다음 페이지의 URL을 다시 작성합니다.

RewriteRule ^events$ /CodeIgniter_2.1.3/index.php/events [L,NC] 

을하고 때마다 주소창에서 http://localhost/next_page에서 I 키 (나는 로그인과이 페이지에서 규칙을 적용하지 않은 때문이다.) 페이지가 잘 나타납니다 내가 또한 리디렉션 ('http : // localhost/events')을 사용하여 시도했습니다. 이것은 또한 잘 작동하지만 여전히 이것이 실제 해결책이 아니라는 것을 압니다. 아, 그런데 .htaccess가 wampserver의 www 폴더에 있습니다. 이 문제를 해결할 방법이 있습니까? 모든 도메인 루트 폴더의

답변

2

먼저 당신의 루트 폴더에 codeigniter_2.1.3에서 파일을 이동하거나 CodeIgniter의 폴더 ROOT을

c:/www/codeigniter_2.1.3/ 

forexample 된답니다 폴더

해야한다.

는 다음과 같이 단지 일반 htaccess로 재 작성을 사용

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond $1 !^(index\.php|images|robots\.txt|css) 
RewriteRule ^(.*)$ index.php/$1 [L] 

그리고 당신이 그 (것)들에게

예를 원하는 페이지를 만들기 위해 CodeIgniter의 라우터를 사용

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

이 설정합니다 http://localhost/login 페이지를 Welcome controler 로그인 기능에서로드됩니다. config 폴더의 routes.php에 $ routes를 설정할 수 있습니다.

P.S> 각 페이지에서 index.php를 보지 않으려면 config/config.php에서 index_page를 확인하고 비워 두십시오.

+0

그래서 우리는 다시 Svetlio haha를 만난다! 잘 이전 질문에 대한 나는 아직도 그것을 알아낼거야. 글쎄, 이건 단지 한 가지만 묻는다. 이 부분은 무엇을합니까? RewriteCond $ 1!^(index \ .php | images | robots \ .txt | css) 텍스트에 이미지와 로봇이 포함 된 이유를 이해할 수 없으며 URL 재 작성의 기본 사항 만 알고 있습니다. 당신이 저에게 그것을 더 설명 할 수 있기를 바랍니다. 어쨌든 당신의 대답은 폴더 이동에 대해 나에게 의미가 있습니다. 고마워. – KaHeL

+0

이미지 robots txt가있는 행은 필요하지 않습니다.) txt 및 css와 같은 파일 유형에 대해 다른 행이 얼마나 중요한지! – Svetoslav

+0

내가보기에, 그것을 적용하고 로그인 페이지에 대한 내 양식 대상 제거 및 잘못된 자격 증명의 오류 처리 성공. 이제이 부분에 대한 또 다른 질문은 'http : // localhost/events'; 로그인이 성공하면 내 페이지가 내가 원했던대로 정확하게 리디렉션됩니다. 그러나 나는 이것이 잘못된 접근이라는 것을 나 스스로 알고있다. 리디렉션 할 때 정확한 URL 위치를 사용하지 않기 위해 어떻게이 부분을 해결해야합니까? – KaHeL

1

로컬 호스트에 가상 호스트를 추가하기 만하면됩니다. 여기에 하나의 step by step explanation on how to do that이 있습니다.

지금 당신이해야 할 모든 URL에 단지 index.php 제거됩니다 CodeIgniter_2.1.3 폴더 내부 .htaccess 파일을 만드는 것입니다.

+0

대답에 감사하지만 나는 그것이 내가 필요한 것 이상으로 대답한다고 생각합니다. 나는 그것을 고맙게 생각한다. 다시 한번 감사드립니다. – KaHeL

관련 문제