컴퓨터에서 사용하는 모든 파일은 각각 고유의 형식이 있다. 웹의 경우도 마찬가지이다.
웹 사이트에서 사용할 문서는 웹에 맞는 형식인 .html
확장자를 붙여 구분한다. 하지만 일반 문서와 달리 웹 문서는 입력하는 프로그램과 내용을 확인하는 프로그램이 다르다. 웹 문서를 입력하는 프로그램을 웹 편집기, 웹 문서를 보는 프로그램을 웹 브라우저라고 한다.
ex) Edge
, Chorme
, Firefox
, Safari
HTML은 HyperText Markup Language의 줄임말로 말 그대로 해석하면 하이퍼텍스트를 마크업하는 언어이다.
하이퍼텍스트란 웹 사이트에서 링크를 클릭해 다른 문서나 사이트로 즉시 이동할 수 있는 기능이고, 마크업이란 태그를 사용해 문서에서 어느 부분이 제목이고 본문인지, 어느 부분이 사진이고 링크인지 표시하는 것을 말한다.
HTML5를 웹 표준 기술이라고 하는데 왜 웹 표준이 필요할까? 어떤 사이트는 엣지에서만 구현되고 어떤 사이트는 크롬에서만 구현된다면 사용자들은 자유롭게 사이트를 이용할 수 없다. 이를 해결하기 위해 등장한 것이 웹 사이트를 만들 때 지켜야하는 약속인 웹 표준이다.
HTML 문서는 정해진 형식에 맞추어 내용을 입력해야 한다. 웹 브라우저는 웹 문서를 한 줄씩 읽으면서 해석한다. 웹 문서는 <!doctype>
, <html>
, <head>
, <body>
4가지 태그를 사용해 문서의 시작과 끝을 표현한다.
<!doctype html>
현재 문서가 HTML5 언어로 작성된 웹문서라는 뜻<html> ~ </html>
웹 문서의 시작과 끝을 나타내는 태그<head> ~ </head>
→<title>
,<meta>
,<style>
<link>
웹 브라우저가 웹 문서를 해석하기 위해 필요한 정보를 입력하는 부분이다. 여기에 있는 정보는 실제 문서 내용이 아니기 때문에 문서 제목만 브라우저 창에 표시되고 나머지는 웹 브라우저 화면에 표시되지 않는다. 스타일 및 스크립트가 포함되기도 한다.
<title>
태그에 지정하는 내용은 거의 모든 웹 브라우저의 제목 표시줄에 표시된다.
<meta>
태그는 문자 인코딩 정보, 웹 문서 키워드 등을 지정할 수 있다. 또한 웹 문서 정보를 검색 엔진에 전달할 때 매우 유용하게 사용되며, 문서에 대한 간단한 설명을 지정할 수 있다.<head> <meta charset = "utf-8"> <meta name = "description" content = "이 문서는 실습 문서입니다."> <meta name = "autor" content = "나혜수"> </head>
<body> ~ </body>
실제로 웹 브라우저 화면에 나타날 내용
<!doctype html>
<html>
<head>
<meta charset = "utf-8">
<title>브러우저 창에 표시되는 문서 제목</title>
</head>
<body>
<h1>우리 집 강아지</h1>
<p>메이 루이 바니</p>
</body>
</html>
HTML로 웹 사이트를 만들고 그 내용을 다른 사람들이 볼 수 있도록 하려면 HTML로 만든 웹 문서를 서버 컴퓨터로 옮겨야 한다. 개인은 서버를 마련하기 어렵기 때문에 서버의 일부 공간을 일정 금액을 내고 사용하는데 이를 '서버 호스팅 서비스'라고 한다.
호스팅 서비스는 어떤 서버를 이용하느냐에 따라 윈도우 서버 호스팅과 리눅스 서버 호스팅으로 나뉜다. 윈도우 서버에서는 ASP
or ASP.NET
프로그래밍 언어를 사용하고, 리눅스 서버에서는 PHP
프로그래밍 언어를 사용하며 좀 더 대중적이고 저렴하다. 이외에 클라우드 서버를 사용한 클라우드 서버 호스팅도 최근 많이 사용한다.
Server Side Script
서버 측에서 작업의 처리를 위해 사용하는 언어이다. 반대되는 개념은 클라이언트 사이드 스크립트로 자바스크릅트가 대표적이다.
예를 들어 메일 쓰기 페이지는 클라이언트 영역에 해당된다. 메일을 작성을 하고 해당 폼에서 전송 버튼을 누르면 브라우저에서 작성된 내용이 먼저 서버로 전송이 되고, 서버에서 받은 내용을 메일 서버를 통해 타 메일 서버로 전송한다. 이때 서버에서 받은 내용을 DB에 저장할 수도 있고, 필요에 따라서 첨부파일의 경우 파일로 남길 수도 있다. 이것은 서버 사이드의 영역이고, 서버 내에서 처리가 된다.