2013-03-21 2 views
0

파일을 업로드하는 동안 CI를 사용하고 있고 문제가 발생했습니다. 아래에 언급 된 메시지가 나타납니다.CI에서 파일 업로드 문제

============================================== ==== 심각도 :

메시지 경고 : escapeshellarg하는 것은() 보안상의 이유로 사용 중지 된

파일 이름 : 라이브러리/upload.php로

줄 번호 : 일부 답변에서 1066

, 서버 문제이며 CI와 관련이 없음을 발견했습니다. 자, escapeshellarg()를 우회하는 파일을 업로드하는 방법이 있습니까? 아니면 escapeshellarg()가 필요하지 않은 라이브러리를 사용할 수 있습니까?

도와주세요.

+0

정상 파일 uloading functoin을 사용할 수 있습니다. –

답변

1

난 당신이 사용하고있는 CI의 특정 버전을 잘 모르겠지만, 최신 버전을 사용하기 전에 그 기능에 대한 검사를 수행합니다.

look at the code here 보자

$cmd = function_exists('escapeshellarg') 
    ? 'file --brief --mime '.escapeshellarg($file['tmp_name']).' 2>&1' 
    : 'file --brief --mime '.$file['tmp_name'].' 2>&1'; 

내가 말할 중 하나를 업그레이드하거나 코드를 수동으로 업데이트 할 것입니다.

+0

최신 버전 2.1.3을 사용했습니다. 문제는 Upload.php 라이브러리 클래스에있었습니다. 나는이 질문에 대한 답을 발견 http://stackoverflow.com/questions/10384336/escapeshellarg-has-been-disabled-for-security-reasons – Anik