더북(TheBook)

웹 문서에 한글 사용하기

웹 페이지를 고쳐봅시다. 아파치 웹 서버는 기본적으로 웹 서버 루트 디렉터리인 /var/www/html의 파일들을 클라이언트에 제공합니다. 웹브라우저에서 웹 사이트 주소를 입력했을 때 가장 먼저 보이는 웹 페이지는 웹 서버 루트 디렉터리의 ‘index.html’ 파일입니다.

기존 ‘index.html’ 파일을 ‘index.html.org’로 바꾸고 새로운 ‘index.html’ 파일을 웹 서버 루트 디렉터리 /var/www/html에 생성합니다.

administrator@server01:~$ cd /var/www/html/
administrator@server01:/var/www/html$ sudo mv index.html index.html.old
administrator@server01:/var/www/html$ sudo vi index.html

‘index.html’ 파일을 다음과 같이 작성해봅시다. 이번에는 웹 문서를 한글로 작성해서 정상적으로 출력하는지 확인해보겠습니다.


<html>
  <body>
    <h1>웹 서버 테스트입니다.</h1>
    <p>웹 브라우저의 HTTP 요청을 받아서</p>
    <p>웹 서버에 저장되어 있는 index.html 파일을</p>
    <p>웹 브라우저에 보여줍니다.</p>
  </body>
</html>

호스트 웹 브라우저로 웹 서버에 접속하면 HTML 문서가 알 수 없는 글자로 표시됩니다. 전송받은 웹 문서의 문자셋CharacterSet이 지정되지 않아 알아볼 수 없는 문자가 표시되는 현상입니다. 웹 서버가 웹 문서의 문자셋을 지정하도록 설정해서 문제를 해결할 수 있습니다.

그림 8-7 문자셋이 지정되지 않았을 경우

한글 사용을 위한 문자셋을 활성화시켜야 합니다. 웹 서버 설정 디렉터리의 /etc/apache2/conf-available에는 웹 서버의 문자셋을 설정하는 ‘charset.conf’ 파일이 있습니다. 이 파일을 vi로 엽니다.

administra tor@server01:~$ sudo vi /etc/apache2/conf-available/charset.conf

AddDefaultCharset 항목의 주석을 해제해서 활성화합니다. 웹 페이지의 기본 문자셋을 전 세계 모든 문자를 표현할 수 있는 유니코드인 UTF-8로 설정합니다.

AddDefaultCharset UTF-8

설정 내용을 반영하기 위하여 아파치 웹 서버를 재시작합니다.

administrator@server01:~$ sudo service apache2 restart
Tip

이번에는 a2enconf를 사용하지 않는데 추가 기능으로 활성화시켰던 servername과 달리 charset은 이미 존재하는 설정 항목이기 때문입니다.

다시 호스트 웹 브라우저에서 웹 서버에 접속해보면 웹 문서가 정상적으로 보입니다.

그림 8-8 문자셋 문제 해결
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.