본문으로 바로가기

보일러 플레이트에 포함되어 있는 기타 파일들에 대한 설명입니다.

.gitignore

보일러 플레이트에는 기본 프로젝트 수준의 .gitignore 파일이 준비되어 있다. Git을 사용해 본적이 있다면 알고 있겠지만 이는 저장소로 사용되는 곳에 올려지질 않을 파일들을 지정할 수 있다. 즉 저장소에 반영되지 않을 파일들을 설정하며 개발 환경이 다르거나 특정 환경에서만 필요한 소스들과 디렉토리를 지정하여 제외할 수 있어 도움이 된다.

특정 OS 및 특정 에디터 파일들은 'global ignore'를 사용해야 시스템의 모든 저장소에 적용된다.

예를 들면, 홈 디렉토리의 .gitignore 는 전역적으로 무시하고자 하는 파일들과 디렉토리를 포함하여 ~/.gitconfig 에 다음을 추가한다 :

[core]
    excludesfile = ~/.gitignore

.editorconfig

.editorconfig 파일은 당신과 당신 팀이 정의하는데 도움을 주고, 다른 에디터와 IDE 사이에 일관된 코딩 스타일을 유지한다.

기본적으로, .editorconfig 는 기본적으로 제공되는 파일의 코딩 스타일을 반영하지만, 더 쉽게 사용자의 요구에 맞게 변경할 수 있는 몇가지 기본 속성이 포함되어 있다.

에디터 및 IDE에 .editorconfig 파일의 속성을 적용하기 위해서는 플러그인 설치가 필요하다.

만일 보일러 플레이트에서 제공하는 서버설정(server configuration)을 사용하지 않는다면, 민감한 정보가 공개되지 않도록 .editorconfig 파일에 대한 접근을 차단해야 한다.

자세한 정보는 EditorConfig project에서 확인하자.

Server Configuration

보일러 플레이트에는 아파치 서버 설정을 위한 .htaccess 파일을 포함한다. 웹서로 아파치를 사용하지 않는다면, 자신의 서버에 맞는 server configuration 파일을 다운로드 한다.

.htaccess 파일은 다음과 같은 것에 사용된다 :

  • Rewriting URLs(URL 재작성)
  • Controlling cache(캐시 제어)
  • Authentication(인증)
  • Server-side includes(서버 측 포함)
  • Redirects(리다이렉트)
  • Gzipping(압축)

메인서버 설정파일(httpd.conf)에 접근 권한이 있다면, 메인 설정파일의 섹션에 .htaccess 파일에대한 로직(logic)을 추가해야 한다(If you have access to the main server configuration file (usually called httpd.conf), you should add the logic from the .htaccess file in, for example, a section in the main configuration file.). .htaccess 파일을 사용하여 아파치에 접근하면 속도가 느려지기에 이것은 일반적으로 권장되는 방법이다.

로컬(locally)적으로 아파치 모듈을 활성화하려면 https://github.com/h5bp/server-configs-apache/wiki/How-to-enable-Apache-modules를 확인하라.

.htaccess 가 사용되어지는 것은 :

  • 웹폰트에 대한 cross-origin 접근을 허용한다.
  • 브라우저가 요청할때 이미지들에 대한 CORS 헤더
  • 404 오류 문서에 대한 404.html 활성화
  • IE 사용자를 위해 더 나은 웹사이트 경험 만들기
  • text/htmltext/plain 에 대하여 문자 인코딩을 UTF-8로
  • rewrite URLs 엔진을 활성화
  • URL의 시작에 www. 를 강제하거나 삭제
  • 기본 문서없이 디렉토리에 접근할 수 있는 것을 차단
  • 중요한 정보를 노출할 수 있는 파일들에 대한 접근을 차단
  • MIME type에 대한 위험성을 감소시킴
  • 강제로 압축(gzipping)
  • 서버로부터 특정 파일을 요청해야 하는지 여부, 브라우저 캐시로 잡아야하는지 여부를 브라우저에게 알려준다.

.htaccess 를 사용할때 모든 주석을 한번쯤은 읽어보길 권장한다(# 뒤의 규칙들). 거기에는 옵션이 잔뜩 준비되어 있다.

좀 더 정보를 얻으려면 https://httpd.apache.org/docs/current/howto/htaccess.html를 확인하자.

crossdomain.xml

크로스 도메인(cross-domain)정책 파일은 웹 클라이언트(Adobe Flash Player, Adobe Reader, etc)를 여러 도메인에 걸쳐 데이터를 처리할 수 있는 방법을 제공하는 XML 문서이다.

  • 데이터에 대한 읽기 권한 부여
  • 크로스 도메인에서 사용자 요청 헤더를 포함하는 클라이언트를 허용
  • 소켓 기반 연결에 대한 권한을 부여

예) 클라이언트가 특정 소스 도메인으로 부터 콘텐츠를 호스트하고, 그 콘텐츠가 자신이 소유하고 있는 도메인이 아닌 다른 도메인을 향한 요청일 경우, 원격 도메인은 원본 도메인에 대한 접근 권한을 부여하고 클라이언트가 트랜잭션을 계속 할 수 있도록 하기 위해 크로스 도메인 정책 파일을 호스팅할 필요가 있다.

더 깊이 있는 정보는 Adobe의 cross-domain policy file specification을 참고하라.

robots.txt

robots.txt 파일은 웹 로봇이 무엇을 웹사이트에서 크롤링 할 수 있는지 지시하는 용도로 사용된다.

기본적으로, 보일러 플레이트에 의해 제공된 파일은 다음 두개의 라인을 포함한다 :

  • User-agent: * : 모든 웹 로봇에 대하여
  • Disallow : 금지하는 것이 없기에 웹사이트의 모든 내용은 크롤링 할 수 있다.

특정 페이지에 대한 크롤링을 금지하려면 Disallow 지시자 이후에 경로를 지정(e.g. Disallow: /경로명)하면 되고, 모든 콘텐츠에 대해 크롤링을 금지하려면 Disallow: / 와 같이 설정하면 된다.

/robots.txt 파일은 접근 제어를 위한 것이 아니므로 그렇게 사용해서는 안된다. 잠긴 문으로 인식하는 게 아니라 "없는 항목"을 나타내는 기호로 생각하게 된다. robots.txt 파일에서 허용되지 않은 URL은 크롤링되지 않고 인덱스를 만들 수 있다. robots.txt 파일의 내용은 잠재적으로 누구나 볼 수 있게 당신의 개인 콘텐츠의 위치를 공개한다. 비공개 콘텐츠에 대한 액세스를 차단하고자한다면, 대신 적절한 인증을 사용하자.

자세한 내용은 다음을 참조하자 :

browserconfig.xml

browserconfig.xml 파일은 사용자가 윈도우 8.1의 시작화면에 해당 페이지를 고정할때 표시되는 타일을 커스터마이징하는데 사용된다. 커스텀 타일 색상, 커스텀 이미지 혹은 라이브 타일을 지정할 수 있다.

기본적으로, 두개의 자리에대한 타일 이미지가 제공한다.

  • tile.png(558x558px) : 작은, 중간, 큰 타일에 사용된다. 이 이미지는 자동적으로 필요에 따라 재조정된다.
  • tile-wide.png(558x270px) : 와이드 타일에 이용된다.

즐겨 찾기에 사이트를 추가할 때 IE11은 동일한 이미지를 사용하는 것을 알 수 있다.

더 자세한 내용은 MSDN에서 확인하도록 하자.