이 기사는 Google Drive의 API를 사용하여 웹 사이트 컨텐츠를 관리하여 기존 CMS의 필요성을 제거하는 방법을 자세히 설명합니다. API 사용량을 최적화하고 잠재적 인 보안 문제를 해결하기위한 기술 구현, 서버 측 캐싱을 다룹니다. NPM 패키지, GIT 저장소 및 Docker 이미지를 포함한 완전한 솔루션을 사용할 수 있습니다.
WordPress와 같은 전통적인 CMS 솔루션은 복잡성을 소개합니다. 새로운 플랫폼, 학습, 보안 위험 증가 및 템플릿 관리 오버 헤드. 이 접근 방식은 많은 팀에게 친숙한 도구 인 Google Drive를 활용하여 컨텐츠 관리를 단순화합니다. 이는 비 기술적 인 직원이 편집 액세스가 필요할 때 특히 유리합니다.
시작하기 전에 다음 리소스에 익숙해 지십시오.
사용자 별 인증이 필요한 OAUTH 대신 Google 서비스 계정을 사용합니다. 서비스 계정은 자체 이메일 주소와 권한을 가진 전용 API 사용자 역할을합니다. 특정 드라이브 파일 또는 폴더에 대한이 계정에 액세스 권한을 부여하면 세분화 된 제어 기능을 제공하고 보안을 향상시킵니다. Google Cloud 플랫폼 콘솔을 통해 서비스 계정 작성이 간단합니다 (자세한 단계는 Github 저장소에 있습니다).
수정 된 node.js QuickStart 샘플을 사용하여 jwtClient
통해 서비스 계정을 인증합니다. 중요한 차이점은 서비스 계정의 자격 증명을 사용하여 인증을 처리하고 서버에 안전하게 저장되며 버전 제어에서 제외됩니다.
이 코드는 서버 측면으로 실행되어 민감한 자격 증명을 보호합니다. getDoc(id, skipCache = false)
과 같은 함수는 Google 문서의 HTML 컨텐츠를 가져 와서 핫 링크를 피하기 위해 이미지 캐싱을 처리합니다. 마찬가지로 getSheet(id, range)
Google 시트의 데이터를 검색하여 JSON 어레이로 변환합니다. API는 목록 파일을 처리하고 Google 슬라이드에서 가져오고 다른 파일 유형을 다운로드 할 수도 있습니다.
캐싱은 Google 드라이브 API 요금 제한을 관리하는 데 중요합니다. 모든 페치 된 파일 버전은 캐시되어 API 호출을 최소화합니다. Google 문서의 이미지 URL도 캐시되어 핫 링크를 제거하고 성능을 향상시킵니다. 이 접근법은 API 사용이 한도 내에 남아 있고 더 빠른 사용자 경험을 제공합니다.
드라이브 API는 Express.js REST 서비스로 싸서 캐싱을 처리하고 자격 증명을 보호하는 프록시 레이어를 만듭니다. 클라이언트 측 상호 작용을 단순화하는 데이터와 같은 /getDoc
페치 및 반환 데이터.
Express 서버는 Docker를 사용하여 배포하여 배포 프로세스를 단순화 할 수 있습니다. Dockerfile이 제공되며 Docker Hub에서 사전 구축 된 이미지를 사용할 수 있습니다.
내부 웹 사이트의 보안을 향상시키기 위해 Nginx는 단일 사인 온을 위해 Google OAUTH와 통합하여 역 프록시로 사용될 수 있습니다. 요청이 Express 서버에 도달하기 전에 추가 인증 계층을 추가합니다.
이 Google 드라이브 기반 CMS는 가볍고 유연한 솔루션을 제공하며 트래픽이 적은 내부 사이트와 이미 Google 드라이브를 사용하는 팀에 이상적입니다. 주요 장점으로는 비 기술적 사용자를위한 사용 편의성, 기존 CMS 솔루션에 비해 복잡성 감소 및 보안 개선이 포함됩니다. 이 접근법은 API 요청을 최소화하는 단일 페이지 응용 프로그램 또는 시나리오에 특히 적합합니다.
위 내용은 Google 드라이브 사용 CMS의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!