Netlify에서 설정한 날짜와 URL의 날짜가 일치하지 않습니다.

4002 단어 NetlifyHexo
개요
안녕하세요.모호한 말이지만 자신이 만든 블로그 사이트에는 기사에 설정된 발언 시간과 날짜에 따라 생성된 URL에 포함된 날짜가 맞지 않는다는 문제가 있다.오늘은 기사에 자세한 내용, 어떻게든 해결할 방법 등을 남기고 싶다.
전제 조건
나의 블로그 사이트는 Hexo로 만들어졌고 Netlify로 운영되었다.(아래 참조)
Hexo+Gitlab+Netlify에서 yahoo Georcites의 이사 주소를 만든 이야기 - Qiita
Hexo의 버전은 3.8.0이다.지금 최신이야.
이번 이야기
예를 들어 새 글에 대해 다음과 같이 발언 시간을 설정한다.
new-post-example.md
---
title: 記事タイトル
date: 2019-05-21 01:15:43
categories:
- ['小ネタ']
tags:
- 'また小ネタか'
---
이를 토대로 만들면 다음과 같은 경로로 열람할 수 있었을 것이다.
기대되는 URL
https://ドメイン/2019/05/21/new-post-example/
하지만 이 URL은 404입니다.실제로 아래 URL이 아니면 액세스할 수 없습니다.하루가 묵었다.
실제 구문 URL
https://ドメイン/2019/05/20/new-post-example/
결론_config.yml와는 달리 Netlify 측면의 시간대를 설정해야 합니다.
Netlify hexo generate 의 글의 URL에 포함된 날짜 문자열의 값은 UTC 기준에 따라 결정되는 것 같습니다.따라서 글에서 설정한 날짜 시간보다 -9시간으로 계산해야 한다.UTC를 판단하는 근거는 편차가 딱 9시간이기 때문이다._config.yml 제 사이트 timezone은 Asia/Tokyo입니다.그래서 원래 UTC+9시간은 기대할 만한 값이다.
_config.일부 발췌문
timezone: Asia/Tokyo
URL이 아닌 사이트 페이지에 표시된 날짜가 기대한 수치를 되돌려주기 때문_config.yml 설정이 잘못된 것은 아닌 것 같다.URL에 사용되지 않은 것 같습니다.또한 localhost 환경에서build에서도 URL과 편차가 발생하지 않습니다.build을 완전히 실행하는 터미널 의존이죠?그나저나 개발에 사용되는 터미널에는 JST가 표시되므로 localhost 환경에서는 일본시간 기반 URL이 생성됩니다.
$ date
2019年 5月21日 火曜日 01時22分09秒 JST
위에서 알 수 있듯이 URL의 생성은 _config.yml에 설정된 시간대를 사용하지 않고 단말기 측의 명확한 설정이 필요하다.
Netlify 측에서build을 변경할 때 시간대 설정
따라서 Netlify 측의 시간대 설정을 변경하려고 합니다.Netlify 환경 변수를 수정하는 방법은 공식 문서에 다음과 같습니다.
Continuous Deployment#Environment Variables | Netlify
  • In the netlify.toml file. Variable values set in the netlify.toml file will override values set in the UI.
  • In your site dashboard under Settings > Build & deploy > Environment > Environment variables. Variable values set under site settings will override the team-level settings.
  • 엄밀히 말하면 하나 더 있지만, 여기서는 통과할 수 있다.간단히 소개해 드리겠습니다.
    방법netlify.toml로 설정하기
    프로젝트의 바로 아래에 아래의 서류를 작성하면 된다.간단하네.환경 변수이기 때문에 안전성이 좋지 않은 정보는 여기에 쓰지 않는 것이 좋지만 GTI를 관리할 수 있는 장점이 있다.
    netlify.toml
    [build.environment]
      TZ="Asia/Tokyo"
    
    더 자세한 쓰기는 아래 링크를 보십시오.
    netlify.toml Reference | Netlify
    방법Netlify 에서 설정
    사이트 선택>settings>Build & Deploy>Environment를 설정할 수 있습니다.이번 상황은 다음과 같은 그림의 설정이다.그리고 세이브를 누르면 완성됩니다.이용 시netlify.toml와 반대로 지트 관리는 불가능하지만 이쪽은 안전하다.

    환경 변수에 추가할 내용과 상황을 구분해서 사용하십시오.시간대만 설정하면 외부에 알려져도 곤란하지 않기 때문에 이 경우netlify.toml에 추가로 대응한다.
    결실
    시간대를 설정하고 다시 구축한 후 의도한 URL에 따라 안전하게 생성됩니다.마음을 놓다.
    최후
    비슷한 일로 고민하시는 분들이 있다면 참고하세요.또 앞으로 넷리프에서 모종의 성과물 개발을 계획하고 있는 사람이 아무 일도 하지 않으면 시간대가 UTC에서 이동하는 만큼 마음 한구석에 둘 수 있다면 좋겠다.(참고로 나는 이렇게 간단한 화제를 해결하는데 며칠이 걸렸다.(^o^)/

    좋은 웹페이지 즐겨찾기