본문으로 건너뛰기

소유권과 이전: 웹사이트는 여러분의 것

소유권과 이전

웹사이트는 여러분의 것입니다. Provelopment와 계속 일할지는 서비스의 선택이며, 기술적으로 종속되는 것은 아닙니다. 다만 그렇게 말하려면 확인할 수 있어야 합니다. 이 페이지에서는 무엇이 여러분의 것이고 무엇이 다른 사용자와 공유되는지, 인수인계가 실제로 어떻게 진행되는지, 다른 상대와 일할 때 무엇이 바뀌는지를 설명합니다.

  • 무엇이 여러분의 것이고, 무엇이 플랫폼의 것이고, 무엇이 사업자 계정의 것인지
  • Foundation 사이트를 운영하는 세 가지 형태와 인수인계에서 실제로 일어나는 일
  • 소프트웨어가 자유롭다는 사실이 사이트 운영을 수고 없는 일로 만들어 주지는 않는 이유

웹사이트를 소유한다는 것

웹사이트의 소유는 하나의 물건이 아닙니다. 혼동하기 쉬운 여러 가지의 모임입니다. 사이트를 움직이는 소프트웨어, 거기에 실리는 글과 이미지, 사업을 설명하는 설정, 사람이 입력하는 주소, 페이지를 내보내는 계정, 그리고 사이트가 연결하는 외부 서비스입니다. 실제로 사이트를 얼마나 자기 뜻대로 움직일 수 있는지는 이 하나하나를 얼마나 직접 쥐고 있는지로 정해집니다.

그래서 ‘웹사이트는 여러분의 것입니다’라는 말은 단언하는 것만으로는 부족하고 설명이 필요합니다. 라이선스가 영구적이어도 도메인과 호스팅 계정과 빌드 설정이 다른 사람 명의라면 옮길 수 없습니다. 파일 복제본이 내 것이어도 그 파일을 움직이는 사이트로 바꾸는 방식이 약속에 들어 있지 않으면 쓸모가 없습니다. 행사할 수 없는 소유는 상태가 아니라 약속입니다.

Foundation은 이 구분을 전제로 만들어졌습니다. 플랫폼은 공개 라이선스 아래에 있는 공유 제품이고, 그 위에 만든 사이트는 여러분의 것입니다. 사이트를 내보내는 계정을 누가 가지는지는 선택한 운영 형태에 따라 달라집니다. 이 페이지는 어느 쪽이 어느 쪽인지 분명히 밝힙니다.

소유권은 무엇으로 이루어지는가

하나의 약속으로 이야기되는 것을 다섯 부분으로 나누어 봅니다. 이 구분이 인수인계를 즉흥이 아니라 절차로 만드는 토대입니다.

  • 플랫폼: 공유되고, 새 판을 적용하면 통째로 바뀐다

    Foundation 자체의 구현(런타임, 공유 셸, 컴포넌트와 레이아웃, 스키마, 검증, 기본 설정)은 플랫폼 쪽 부분입니다. 모든 사용자에게 같은 내용이고, Apache-2.0에 따라 여러분에게 허락되며, 새 Foundation 판을 적용하면 통째로 바뀝니다. 그 복제본을 유지하는 일은 여러분 자신 또는 여러분이 지명한 사람의 책임입니다. 프로젝트가 공개하는 것은 플랫폼과 매뉴얼이며, 설치본별 유지보수 서비스가 아닙니다.

  • 사이트: 설정, 콘텐츠, 브랜드

    이름, 설명, 언어, 내비게이션, 콘텐츠, 시각 자산은 플랫폼의 일부가 아닙니다. 모두 여러분의 저장소에 파일로 저장되고, 직접 확인하고 바꿀 수 있습니다. 스스로 운영하든 다른 상대에게 맡기든 여러분의 것으로 남습니다.

  • 저장소와 계정

    사이트는 저장소 안에서 살아 있습니다. 그 저장소는 여러분 자신의 계정에 둘 수 있습니다. 호스팅과 그 밖의 서비스 계정도 마찬가지입니다. 사이트를 실제로 움직이는 힘의 대부분은 설정을 누가 썼는지가 아니라 이 계정을 누가 가지는지로 정해집니다.

  • 주소와 신원: 도메인과 DNS

    도메인은 사람이 입력하는 주소이고, 누군가의 등록 사업자 계정에 묶여 있습니다. DNS 설정은 그 주소가 어디를 가리키는지를 정합니다. 둘 다 계정의 주인만 바꿀 수 있습니다. 그래서 직접 가져야 할 대상에 포함됩니다.

  • 제3자의 권리

    사이트에 쓰이는 모든 것이 Foundation에서 온 것은 아닙니다. 일부 라이브러리와 아이콘에는 고유한 라이선스가 있고, 연결하는 서비스에는 그 이용 조건이 있습니다. Foundation은 남의 결과물을 다시 허락하지 않으며, 여러분과 Provelopment 사이의 약속이 그 조건을 바꾸지도 않습니다.

Foundation 사이트를 운영하는 세 가지 형태

Foundation 사이트는 세 가지 형태로 운영할 수 있습니다. 첫째, 완전히 스스로 운영하는 형태입니다. 저장소와 도메인과 호스팅 계정이 자기 손에 있고, 변경 적용도 직접 합니다. 둘째, 자신이 고른 개발자나 대행사와 함께 진행하는 형태입니다. 작업은 자신의 저장소와 자신의 계정 안에서 이루어지고, 상대는 실행자가 됩니다. 셋째, Provelopment와 함께 진행하는 형태입니다. 약속에 따라 배포, 유지보수, 운영 지원을 받습니다.

어느 것도 이미 굳어진 서비스 메뉴가 아니며, 오늘 무엇이 제공되는지를 약속하는 것도 아닙니다. 이것은 프로젝트를 만드는 방식의 바탕에 있는 의도입니다. 플랫폼과 설정과 매뉴얼은 이 세 형태가 실제로 성립하도록 만들어졌고, 어느 하나만이 합리적인 선택이 되도록 만들어지지 않았습니다.

세 형태에서 변하지 않는 것이 있습니다. 소프트웨어는 여러분에게 허락되고, 콘텐츠와 브랜드는 여러분의 것이며, 옮길지 여부를 정하는 것은 여러분의 몫입니다.

사이트 하나인 설치본과, 여러 사이트를 담은 설치본

Foundation 설치본(Installation)이 반드시 웹사이트 하나와 일대일로 대응하지는 않습니다. Provelopment의 설치본은 여러 Spoke를 담을 수 있습니다. Spoke는 공개되는 호스트 이름마다 나뉜 사이트 하나를 뜻합니다. 하나의 Foundation 런타임을 함께 쓰면서 각자 자신의 설정과 콘텐츠와 자산을 가집니다.

이 구분은 실무에서 중요합니다. 설치본이 사이트 하나만 담고 있으면 인수인계는 비교적 단순합니다. 여러 Spoke를 담고 있으면 함께 쓰는 부분(런타임, 공유 셸, 스키마, 빌드와 배포 절차)과 Spoke마다의 부분(설정, 콘텐츠, 자산, 도메인)을 나누어 생각해야 합니다. Spoke 하나만 떼어 다른 설치본으로 옮기는 것도 가능하지만, 그 경우 함께 쓰는 부분을 어떻게 할지 정해야 하고, 사이트 하나만 넘기는 것보다 일이 더 늘어납니다.

따라서 ‘각 사이트는 자동으로 독립적으로 옮길 수 있다’고 말할 수는 없습니다. 옮길 수 있는지는 그 사이트가 어느 설치본에 속하고 무엇이 함께 쓰이는지에 따라 정해집니다. 인수인계 계획을 세울 때 가장 먼저 확인할 것 중 하나입니다.

의도이고, 보증이 아닙니다

이 페이지는 Foundation 사이트를 어떤 방식으로 운영하려는지 설명하는 것이지, 오늘 제공되는 서비스를 설명하는 것이 아닙니다. 상업적인 약속은 원할 경우 별도로 서면으로 맺어지며, 범위와 대가와 누가 무엇에 책임지는지를 포함합니다. 이 페이지의 서술이 서비스 내용에 대한 약속이 되지는 않습니다.

인수인계 점검표

인수인계의 성공은 파일을 넘기는 일이 아니라 능력을 옮기는 일입니다. 끝났을 때 다른 사람이 이전 담당자에게 묻지 않고 사이트를 움직일 수 있는지가 기준입니다.

  • 저장소 접근

    변경 이력을 포함해 자신이 가진 계정에 있는지, 다시 되찾을 수 있는 상태인지.

  • 도메인과 DNS

    등록 사업자 계정과 DNS 설정. 주소가 어디를 가리키는지 바꿀 수 있는 사람은 계정의 주인뿐입니다.

  • 호스팅과 사업자 계정

    사이트를 내보내는 계정. 계약 내용의 변경, 다른 사업자로의 이전, 해지를 할 수 있는 권한을 포함합니다.

  • 비밀 정보와 환경 변수

    API 키, 데이터베이스 인증 정보, 그 밖에 사이트 동작에 필요한 값. 가장 잘 잊히고, 인수인계가 막히는 가장 흔한 원인입니다.

  • 외부 서비스

    사이트가 연결하는 서비스 목록과 그 계정, 계약 내용. 교체나 종료를 미리 계획할 수 있게 합니다.

  • 배포 절차

    저장소를 움직이는 사이트로 바꾸는 절차와 명령, 실행 환경에 필요한 사전 조건.

  • 백업과 복원

    한 번은 실제로 복원해 본 백업. 어딘가에 있다는 사실만으로는 충분하지 않습니다.

  • 판단의 기록

    설정에서 읽어 낼 수 없는 판단의 이유. 왜 그렇게 했는지, 이유 없이 바꾸면 안 되는 부분은 어디인지.

저장소 복제본만으로는 부족한 이유

저장소에 들어 있는 것은 파일뿐입니다. 도메인은 들어 있지 않습니다. 인증 정보도, 호스팅 계정도, 만든 사람의 머릿속에만 있는 판단도 들어 있지 않습니다. 복제본이 완전해도 호스팅 계정에 대한 접근이 닫히는 날 사이트는 멈춥니다.

그래서 쓸모 있는 질문은 ‘파일 복제본을 가지고 있는가’가 아니라 ‘다른 사람이 이것을 움직일 수 있는가’입니다. 그 답이 분명하지 않다면 인수인계는 끝나지 않았습니다.

사업자나 개발자를 바꿀 때

사업자나 개발자를 바꾸는 일은 드문 결정이 아닙니다. 작업의 대부분은 실무적입니다. 계정과 설정을 옮기고, 도메인과 DNS가 가리키는 곳을 바꾸고, 비밀 정보와 환경 변수를 다시 넣고, 새 환경에서 배포 절차를 실행하고, 페이지와 양식과 리디렉션이 이전과 같게 동작하는지 확인합니다.

솔직히 말해 두어야 할 것도 있습니다. 결과가 늘 같지는 않습니다. 능력과 가격과 작업의 품질은 상대에 따라 다르고, 서두른 이전은 일시적인 문제를 만들 수 있습니다. Foundation이 확실히 해 두는 것은 하나입니다. 소프트웨어의 어떤 부분도 의도적으로 이전을 어렵게 만들어 두지 않았습니다.

유지보수와 운영은 누구의 책임인가

유지보수와 운영의 책임은 언제나 누군가에게 있습니다. 정해야 하는 것은 그것이 누구인가입니다. 흔한 답은 여러분 자신, 여러분이 지명한 개발자, 또는 약속에 따른 Provelopment입니다. 중요한 것은 답의 내용이 아니라, 답이 짐작이 아니라 결정이 되어 있다는 사실입니다.

할 일도 일상적입니다. 의존성을 갱신하고, 보안 업데이트를 적용하고, 백업이 실제로 복원되는지 확인하고, 사이트에 닿을 수 있는지 감시하고, 갱신으로 무엇도 깨지지 않았는지 확인합니다. 손대지 않은 사이트는 갑자기 무너지기보다 조금씩 낡아 갑니다. 비용은 마지막에 한꺼번에 드러납니다. 그래서 정한 답이 짐작한 답보다 비용이 적습니다.

자주 묻는 질문

아래 답변은 라이선스 조건과 이 페이지에서 설명한 구조에 근거한 것입니다. 추가 약속이 아닙니다.

Provelopment와의 일을 그만둘 수 있습니까

그만둘 수 있습니다. 언제든, 이유를 대지 않고도 가능합니다. 소프트웨어는 영구히 여러분에게 허락되어 있고, 라이선스 조건은 Provelopment와의 상업적 관계에 의존하지 않습니다.

Provelopment와의 일을 그만두면 사이트가 멈춥니까

아닙니다. 필요한 접근이 여러분에게 넘어와 있다면 멈추지 않습니다. 저장소, 도메인과 DNS, 호스팅 계정, 사이트가 쓰는 비밀 정보입니다. 위 점검표가 파일이 아니라 능력을 이야기하는 이유가 여기에 있습니다. 멈추는 것은 대가를 지불하던 지원이며, 소프트웨어가 아닙니다.

Foundation 플랫폼 자체의 유지보수는 누가 합니까

Apache-2.0의 조건에 따라 여러분 자신이나 여러분이 지명한 사람입니다. 프로젝트는 릴리스와 매뉴얼과 변경 이력을 공개하지만 설치본별 유지보수 서비스를 제공하지는 않습니다. 그 작업을 다른 상대에게 맡기고 싶다면 별도의 약속이 됩니다.

특정 호스팅 사업자를 써야 합니까

아닙니다. Foundation은 여러분이 고른 서비스에 연결하는 지점을 제공합니다. 어느 사업자를 쓸지는 여러분의 판단입니다. 매뉴얼이 설명하는 것은 배포를 준비하는 방법이고, 어느 사업자를 골라야 하는지가 아닙니다.

Foundation을 쓰면 Provelopment에 비용을 내야 합니까

아닙니다. 플랫폼은 라이선스에 따라 자유롭게 쓸 수 있고, 쓰는 것만으로 저희와의 관계가 생기지 않습니다. Provelopment에 지불하는 것은 일을 사는 것이며, 도입과 유지보수와 운영과 자문이 포함됩니다. 프로젝트에 대한 자금 지원은 또 다른 이야기이고 전적으로 자발적입니다.

사이트가 계속 동작한다는 보증이 있습니까

없습니다. 어떤 플랫폼도 그것을 약속할 수 없습니다. 솔직히 말할 수 있는 것은 다음과 같습니다. 허락은 거둬들일 수 없습니다. 설정과 콘텐츠는 파일로 저장되어 직접 확인할 수 있습니다. 사이트는 저희 없이도 움직일 수 있습니다. 나머지는 누군가가 하는 유지보수 작업에 달려 있습니다. 그것이 여러분 자신인 경우까지 포함해서요.

Provelopment가 계속 일을 맡기 위해 생각하는 것

여기서의 사업 방식은 일부러 평범합니다. 대가에 맞는 일을 하고 결과로 판단받는 것. Provelopment가 계속 일을 맡으려 하는 방법은 쓸모 있는 일을 하는 것입니다. 확실한 도입, 안정적인 운영, 그리고 사이트를 세우는 데 그치지 않고 움직여 온 경험에서 나오는 판단력입니다.

그래서 어느 결과도 저희에게는 성공입니다. 사이트를 가져가 스스로 자신 있게 운영하는 고객은 성공입니다. 프로젝트가 약속한 것을 지킨 셈입니다. Provelopment가 정말로 가장 도움이 되는 선택이어서 계속하는 고객도 성공이며, 오히려 바람직한 형태입니다. 비교했을 때 남는 것은 그 형태뿐이기 때문입니다.

솔직히 밝혀 둘 것이 두 가지 있습니다. 사업자를 바꾸는 일이 같은 결과를 뜻하지는 않습니다. 능력과 가격과 품질은 상대마다 다릅니다. 그리고 이 페이지의 서술은 Provelopment의 앞으로의 상황에 대한 약속이 아닙니다. 여기 적힌 것은 소프트웨어를 만드는 방식이 실제로 지탱하는 의도이고, 회사의 상황에 대한 보증이 아닙니다.

다음 단계

플랫폼을 도입해 직접 운영하기. 맡게 될 내용 읽기. 도움이 필요할 때 무엇이 있는지 알기.

다음에 읽기