>  기사  >  개발 도구  >  gitee에 배포했을 때 hexo가 정상적으로 표시되지 않으면 어떻게 해야 하나요?

gitee에 배포했을 때 hexo가 정상적으로 표시되지 않으면 어떻게 해야 하나요?

PHPz
PHPz원래의
2023-04-11 09:10:06576검색

Hexo는 GitHub, GitLab, Coding을 포함한 멀티 플랫폼 배포를 지원하는 매우 인기 있는 정적 블로그 생성기입니다. 국내 코드 클라우드(gitee) 플랫폼에도 배포를 지원합니다. 그러나 일부 Hexo 사용자는 자신의 블로그를 gitee에 배포할 때 블로그 콘텐츠가 제대로 표시되지 않는다는 사실을 발견했습니다. 이 문제를 해결하는 방법은 무엇입니까?

먼저 이 문제는 Hexo 자체의 문제가 아니라 gitee 플랫폼의 크로스 도메인 요청 제한으로 인해 발생했다는 점을 분명히 해야 합니다. Hexo를 사용하여 블로그를 gitee 플랫폼에 배포하면 일부 정적 파일(예: HTML, CSS, JS 등)이 생성됩니다. 이러한 파일에 있는 이미지, 글꼴 및 기타 정적 리소스의 경로는 상대 경로입니다. ". ./images/test.png"와 같은. gitee를 통해 블로그에 액세스하면 gitee는 이러한 정적 파일을 캐시하고 사용자가 액세스할 수 있는 캐시된 콘텐츠를 제공합니다. 그러나 사용자가 사진, 글꼴 및 기타 정적 리소스에 액세스해야 하는 경우에는 상대 경로를 사용합니다. (예: "example.com")이 크로스 도메인 요청을 하는 경우, gitee 플랫폼에서는 크로스 도메인 요청을 제한하여 블로그 콘텐츠를 정상적으로 표시할 수 없는 문제가 발생합니다.

그렇다면 이 문제를 어떻게 해결해야 할까요? 가능한 해결 방법은 다음과 같습니다.

  1. CDN을 사용하세요. CDN을 사용하면 상대 경로 문제를 해결할 수 있습니다. 교차 도메인 요청 문제를 방지하기 위해 모든 정적 리소스를 CDN에 업로드하고 주소를 절대 경로로 설정할 수 있습니다. 예를 들어 "https://cdn.example.com/images/test.png"입니다. 그러나 CDN을 사용하려면 비용을 지불해야 합니다. 재정 상황이 허락하지 않는 경우 다음 옵션을 고려할 수 있습니다.
  2. 모든 정적 리소스를 gitee의 창고에 업로드하세요. gitee에서는 새 웨어하우스를 생성한 다음 모든 정적 리소스를 이 웨어하우스에 업로드할 수 있습니다. 도메인 간 요청 문제를 방지하려면 Hexo 구성 파일에 웨어하우스의 액세스 주소를 추가해야 합니다. 예를 들어 "https://gitee.com/username/static/raw/master/images/test.png"입니다. 이 방법의 단점은 파일을 수동으로 업로드해야 한다는 점이며, 이는 번거롭습니다. 그러나 블로그 내용이 변경되지 않는 경우 캐싱 기능을 사용하여 요청 수를 줄일 수 있습니다.
  3. Travis CI 사용. 이 솔루션을 사용하려면 프로그래밍 경험이 필요합니다. Travis CI는 지속적인 통합 서버에 코드를 자동으로 구축, 테스트 및 배포할 수 있는 통합 테스트 및 배포 도구이므로 블로그를 자동으로 배포할 수 있습니다. 특정 작업에 대해서는 공식 문서를 참조하세요. 이 솔루션은 비교적 복잡하지만 효과는 매우 좋습니다.

결론적으로 Hexo 블로그가 제대로 표시되지 않는 문제는 gitee 플랫폼의 크로스 도메인 요청 제한 때문입니다. 이는 CDN을 사용하여 gitee의 웨어하우스에 정적 파일을 업로드하고, Travis CI 질문을 사용합니다. 각 옵션에는 장단점이 있으며 실제 상황에 따라 적합한 옵션을 선택할 수 있습니다.

위 내용은 gitee에 배포했을 때 hexo가 정상적으로 표시되지 않으면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.