제목 | force_download 이용시 파일명에 괄호가 깨지는 현상입니다. | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 정말못살아 | 작성시각 | 2017/09/13 16:19:43 |
|
|||
먼저 읽어주셔서 감사합니다~~ (_ _) 다운로드시 파일명에 괄호가 깨지는 현상입니다. 다운로드 링크를 걸어서 다운로드시 지정될 파일명을 보냅니다. 그런데 파일명에 괄호() 가 들어있습니다. http://도메인/app/download/다운로드파일명(중).ppt
download 함수는 아래와 같습니다. public function download($name) { $this->load->helper('download'); $data = file_get_contents($this->다운로드파일서버경로); force_download( $name, $data); }
실행하면 Error 가 뜹니다. The URI you submitted has disallowed characters.
그래서 config.php 에서 $config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-()'; 으로 괄호를 추가했습니다.
그랬더니 다운로드는 됩니다.
그런데 ### 다운로드파일명& # 4 0 ; 중 & # 4 1 ; .ppt ### 이라고 나오네요... (중간빈칸은 임의로 넣었습니다. 여기서는 변환해서 괄호로 잘 나오네요.) 어떤 부분을 수정해야할까요. 아니면 로직을 수정해야할까요? 링크파일명을 보내는게 잘못된것일까요?
고수님들의 조언 부탁드립니다.
|
|||
다음글 | ci에서 instance와 static의 의미는... ... (3) | ||
이전글 | 페이스북sdk설치에 대한 질문입니다 (2) | ||
변종원(웅파)
/
2017/09/13 16:53:54 /
추천
0
|
정말못살아
/
2017/09/13 17:47:56 /
추천
0
답변감사드립니다~~ 계속 새로고침으로 확인중이였는데 ㅠㅠ 역시 웅파님이시네요.
링크주소는 http://도메인/app/download/다운로드파일명(중).ppt 이대로 찍힙니다. 저만의 특이한 현상인건가요? 서버는 Nginx 이며 CI 버전은 2.1.2 php 는 5.3 을 쓰고 있습니다.. |
변종원(웅파)
/
2017/09/14 10:13:24 /
추천
0
정말못살아/ 링크주소가 화면엔 정상적으로 찍혀도 소스단에서는 변환된 형태일 수 있습니다. 서버에 저장된 파일명도 확인해보시구요. |
링크 주소가 변환된 상태인지 확인해보세요.
force_download에서 파일명 변환하거나 하는 부분이 없습니다.