우분투 아파치 서버에서 java프로그램 실행..
글쓴이: minsubsim / 작성시간: 수, 2012/04/04 - 11:15오전
안녕하세요
제가 ubuntu 서버에서 apache2를 깔고, 간단한 php코드를 이용해 서버에 있는 java 프로그램을 실행시키는데요
실행은 잘 되는데 문제는 한글입니다.
php에서 exec으로 java -jar program.jar 이런 형식으로 실행시키고 있는데
다른건 다 잘되는데 출력파일의 한글 부분이 다 깨집니다 (????로 나옵니다)
터미널에서 직접 exec으로 들어가는 쿼리를 넣어보면 잘 나오는데,,,
이 문제를 해결하려면 어떻게 해야할까요?
Forums:
웹서버 문자셋으로 자바 문자셋을 맞추면 어떻까 합니다.
웹서버 문자셋으로 자바 문자셋을 맞추면 어떻까 합니다.
아마도 아래 디버깅 코드를 넣고 웹서버 php에서 exec로 실행되는것과 shell에서 실행되는것을 비교해 보세요.
아마도 문자셋이 다르다고 추정이 됩니다.
제각 생각하기엔 shell에서는 문자셋과 관련된 환경변수가 UTF-8이므로 이것을 인식한 자바의 디폴트 문자셋도 UTF-8가 되어 한글 출력이 자연스럽게 되지만,
웹서버 php exec에서는 언어 관련 환경 변수값이 없으므로 자바 네이트브 문잣세인 UTF-16이 되어서 깨져 보이는듯합니다.
해결책은 앞서 말한대로 자바 문자셋을 웹서버 문자셋으로 변경한후 출력하시면 될듯합니다.
-----디폴트 문자셋 알아내기 디버깅 코드 -----------
System.out.printf("default charset[%s], 한글", Charset.defaultCharset().toString());
----------------
댓글 달기