2017-12-04 3 views
0

먼저 알려 드리겠습니다. 이 응용 프로그램은 현재 라이브 서버에서 잘 작동하지만 다른 도메인의 다른 서버로 이동해야했습니다.Codeigniter의 경로가 다른 서버에서 작동하지 않습니다.

문제는 색인을 제외한 모든 페이지마다 404 오류가 발생합니다. index.php를 통해로드하면 정상적으로 작동합니다. 예를 들어

:

www.test.com/main/login는 //이 404 오류

www.test.com/main/index.php/login //이 부하를 제공합니다 fine

현재 모든 것이 정상적으로 작동하므로 $config['base_url']과 데이터베이스 구성 파일에서만 변경했습니다. 파일에 다른 변경 사항이 없습니다.

또한이 질문에 다른 사람이 제공 한 해결책은 이미 시도 된 것으로 작동하지 않습니다. 솔루션 코드 & 아래 $config['index_page']='' 설정과 htaccess로 파일을 생성하는 것입니다 :

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L] 

현재 서버 VPS & 제공 GoDaddy를입니다. 새 서버는 공유 호스팅이며 공급자는 GoDaddy입니다. 이 사건의 근본 원인을 알 수는 없지만 가능한 해결책을 지적 할 수 있습니까?

내가 오류에 대한 스크린 샷을 첨부하고있어

편집, 그것은 일반적인 404 오류 페이지 아니다. 도움이 될 경우.

enter image description here

+1

[CodeIgniter에서 index.php를 제거하는 코드] (https://stackoverflow.com/questions/19183311/codeigniter-removing-index-php-from-url)의 가능한 복제본 – Artier

답변

1

은 GoDaddy이 들어,이 두 가지를 변경해야합니다.

당신의 .htaccess 파일에서

, 다음으로

RewriteRule ^(.*)$ index.php/$1 [L] 

교체 :

$config['index_page'] = ''; 

둘 :

RewriteRule ^(.*)$ index.php?/$1 [L] 

그런 다음 응용 프로그램/설정/config.php를입니다 이 변경 사항으로 문제를 해결하는 데 도움이됩니다.

+0

이것은 작동하지 않습니다. 이제는 /index.php를 찾을 수 없다고 말합니다. 내 답변에 스크린 샷을 첨부했습니다.보세요. –

+0

죄송합니다.이 또는 다른 것이 효과가있었습니다. Rewritebase에 하위 폴더 이름을 넣지 않았습니다. –