CI 묻고 답하기

제목 CI 4.1.1 서버 셋팅 오류 관련 문의드립니다.
카테고리 CI 4 관련
글쓴이 nick1106 작성시각 2021/03/02 18:43:39
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 12363   RSS

안녕하세요.

현재 CI 4.1.1 + PHP 7.4.15 +Apache 2.4 환경에서 개발환경을 구축하고 있습니다.

서버에 CI 프레임워크 소스코드를 셋팅 후 index 페이지 접근 시 아래와 같은 에러가 발생하고 있습니다.

 

CRITICAL - 2021-03-02 09:37:01 --> The framework needs the following extension(s) installed and loaded: {0}.#0 C:\Users\admin\Desktop\dev\Apache24\htdocs\music\system\CodeIgniter.php(224): CodeIgniter\Exceptions\FrameworkException::forMissingExtension()#1 C:\Users\admin\Desktop\dev\Apache24\htdocs\music\system\CodeIgniter.php(172): CodeIgniter\CodeIgniter->resolvePlatformExtensions()#2 C:\Users\admin\Desktop\dev\Apache24\htdocs\music\system\bootstrap.php(159): CodeIgniter\CodeIgniter->initialize()#3 C:\Users\admin\Desktop\dev\Apache24\htdocs\music\public\index.php(35): require('C:\\Users\\admin\\...')#4 {main}

구글링 결과 intl 익스텐션 관련 오류로 php.ini에서 

;extension=intl 부분을 extension=intl으로 고치고 해봐도 동일 증상이 보이고 있습니다.

 

혹시 저와 같은 문제로 해결하신 분 있을까요 ??

 다음글 트랜젝션 질문입니다 (3)
 이전글 세션유지(자동로그인)에 관한 질문입니다. (1)

댓글

PureAni / 2021/03/02 18:55:10 / 추천 1
curl, intl, json, mbstring, xml
 
intl 은 확인하셨다고하셨으니, 나머지 확인해보세요.
변종원(웅파) / 2021/03/03 08:58:46 / 추천 1
intl 설치는 된건가요? php.ini 만 바꿔서 되는건 아닙니다.
nick1106 / 2021/03/03 09:52:08 / 추천 0

공식문서 보니 intl이랑 mbstring이 필수라고해서 일단 해당 익스텐션들 설치 및 php.ini 해당 부분들 수정하고 다시 확인해보겠습니다!

빠른 답변 감사합니다~!

테러보이 / 2021/03/04 16:00:32 / 추천 0

해당 부분은 윈도우 서버일경우 처리 하는 부분이고 리눅스의 경우 해당 기능을 설치하고 서버를 리스타트 하시면됩니다.

phpinfo를 찍어 정상 추가됬는지 확인해보세요.

 

만약 의존성 설치가 아닌 소스 설치를 하셨다면 모듈 추가후 컴파일을 다시 하셔야합니다.

ci늦둥이 / 2021/03/12 13:27:15 / 추천 0
window 환경에서는 할 수 없는건가요?
변종원(웅파) / 2021/03/12 14:23:58 / 추천 0

ci늦둥이/ 사용할 수 있습니다. 

https://www.google.com/search?q=windows+php+intl+extension&rlz=1C5CHFA_enKR891KR891&oq=windows+php+intl&aqs=chrome.1.69i57j0i30j0i8i30l8.11996j0j7&sourceid=chrome&ie=UTF-8

apm 모두 설치해주는 xampp의 경우 php.ini에서 주석 제거하고 아파치 재시작 하면 바로 적용됩니다.

세워춍 / 2023/01/08 15:36:22 / 추천 0

수동으로 PHP를 설치한 경우 php 설치 경로가 환경변수 PATH에 지정되어 있지 않아서 생기는 문제입니다.

 

intl dll은 실행시 icu**66.dll 을 필요로 하는데

icu**66.dll 설치 폴더가 PATH에 없으면 이를 찾지 못하여 intl dll이 로드되지 않습니다.

 

이를 해결하는 방법은 두가지가 있습니다.

1. 환경변수 PATH에 php 설치폴더를 추가하거나

2. php폴더의 icu**66.dll (4~6개 화일)들을 아파치 bin폴더로 복사합니다.