버전 4.6.2
릴리스 날짜: 2025년 7월 26일
CodeIgniter4 4.6.2 릴리스
보안
ImageMagick Handler: ImageMagick 핸들러의 명령 주입 취약점이 수정되었습니다. 자세한 내용은 보안 권고 GHSA-9952-gv64-x94c를 참조하세요.
변경사항
Security: Security 헬퍼의
sanitize_filename()함수가 이제 상대 경로 허용 여부를 제어하는 두 번째 매개변수를 지원합니다.
사용 중단
Security:
Security::sanitizeFilename()메서드가 사용 중단되었습니다. 대신sanitize_filename()을 사용하세요.Security:
SecurityInterface::sanitizeFilename()메서드가 사용 중단되었습니다.
버그 수정
Cache: 손상되거나 읽을 수 없는 캐시 파일로 인해
FileHandler::getItem()에서 처리되지 않은 예외가 발생할 수 있는 버그가 수정되었습니다.Commands:
make:test가 Windows에서 항상 오류가 발생하는 버그가 수정되었습니다.Commands:
make:test에서 생성된 테스트 파일이Test.php로 끝나지 않는 버그가 수정되었습니다.Commands:
make:test에서 클래스 이름을 입력하지 않은 후 입력 프롬프트가 세 번 표시되는 버그가 수정되었습니다.CURLRequest: 특정 시나리오에서 중간 HTTP 응답이 응답 체인에서 제대로 제거되지 않아 최종 응답 대신 잘못된 상태 코드와 헤더가 반환되는 버그가 수정되었습니다.
Database:
ConditionalTrait의when()과whenNot()이[],0,0.0,'0'같은 특정 거짓 값을 참으로 잘못 평가하여 콜백이 예기치 않게 실행되는 버그가 수정되었습니다. 이 메서드들은 이제(bool)을 사용하여 조건을 불리언으로 캐스팅하여 PHP의 기본 진리값과 일관된 동작을 보장합니다.Database:
BaseConnection::transStatus보호된 속성에 접근할 때BasePreparedQuery에서 발생하는 캡슐화 위반이 수정되었습니다.DownloadResponse: 인라인 disposition 사용 시
Content-Disposition헤더에서filename매개변수가 누락되어 브라우저가 의도한 파일명 대신 마지막 URL 세그먼트를 파일명으로 사용하는 버그가 수정되었습니다.Email:
$_SERVER['SERVER_NAME']이 설정되지 않았을 때Email::getHostname()이$_SERVER['SERVER_ADDR']를 사용하지 못하는 버그가 수정되었습니다.Security: Security 헬퍼의
sanitize_filename()함수가 CLI 요청에서 사용될 때 오류를 발생시키는 버그가 수정되었습니다.Session: 지원되지 않는 데이터베이스 드라이버(
SQLSRV,OCI8,SQLite3등)와 함께DatabaseHandler를 사용할 때 적절한 오류가 발생하지 않는 버그가 수정되었습니다.SiteURI:
index.php파일을 유지하면서mod_rewrite를 사용하여 하위 폴더에서 앱을 제공할 때SiteURIFactory::parseRequestURI()에서 잘못된 라우트 경로가 감지되는 버그가 수정되었습니다.SiteURI: 애플리케이션이 하위 폴더에서 제공될 때 멀티바이트(비ASCII) 문자가 포함된 폴더 이름이
SiteURIFactory::parseRequestURI()에서 올바르게 해석되지 않는 버그가 수정되었습니다.URI: 정의된 기본 포트가 없는 스킴(
rtsp://등)에서 배열 키 처리 누락으로 인해URI::getAuthority()에서 문제가 발생하는 버그가 수정되었습니다.
수정된 버그의 전체 목록은 저장소의 CHANGELOG.md를 참조하세요.