나만의 정적 URL 단축기 ⚡️
Github Pages에 게시된 정적 사이트 생성기는 요즘 꽤 인기가 있습니다. 하지만 정적 파일을 기반으로 URL을 리디렉션할 수 있는 정적 URL 단축기(생성기는 말할 것도 없고)는 어떻습니까?
일반적으로 개발자는 이를 위한 리디렉션이 포함된 서버를 설정합니다(정적으로는 아님). URLZap이 등장하는 곳입니다. 파일과 HTML 마법사를 사용하여 URL을 생성하여 사용자가 Github 페이지에 자신의 URL 리디렉션을 호스팅할 수 있도록 합니다.
정적 웹사이트 생성기와 유사하지만 URL용
단축 여부에 관계없이 URL을 보관하세요.
Github 페이지와 함께 사용할 수 있습니다
서버를 실행하거나 HTTP 301 리디렉션을 설정할 필요가 없습니다.
예제 프로젝트: brunoluiz/_
스스로에게 물어볼 수도 있습니다. 서버 없이 어떻게 이 작업을 수행할 수 있습니까? 답은 <meta http-equiv="refresh" /> 에 있습니다. HTTP 301(리디렉션) 상태 코드로 작동하지만 클라이언트 측에서 수행됩니다. w3c 웹사이트에 좀 더 자세한 설명이 있습니다.
원하는 경로와 URL이 포함된 config.yml 기반으로 urlzap 메타 새로 고침 태그를 사용하는 index.html 파일을 생성합니다. HTTP 301만큼 완벽하지는 않지만 매우 유사합니다. Hugo와 같은 다른 정적 웹사이트 생성기에서도 비슷한 전략을 사용합니다.
예는 다음과 같습니다:
경로: './links' # 기본값은 './'urls: google: https://google.com 도구:github: https://github.com
맵의 각 키는 {.path param}/{key} 경로에 매핑되어 {value} 로 리디렉션됩니다. 그러면 다음이 생성됩니다.
- links/ - google/ - index.html (contains redirect) - tools/ - github/ - index.html (contains redirect)
예를 들어 이러한 파일은 서버가 필요 없이 Github 페이지에 업로드될 수 있습니다. brunoluiz/_ 에서는 config.yml 예제를 볼 수 있고 gh-pages 분기에서 출력을 확인할 수 있습니다.
자세한 내용은 릴리스 섹션을 확인하세요.
brew 사용하여 설치하십시오.
brew tap brunoluiz/tap brew install urlzap
이전 YAML 예제 사용:
경로: './links' # 기본값은 './'urls: google: https://google.com 도구:github: https://github.com
urls : {key}:{redirect URL} 패턴을 따르는 원하는 URL 맵
path : 출력 경로
정적 파일을 생성하려면 urlzap generate 실행하세요.
아마도 이 도구와 함께 Github Pages를 사용하게 될 것입니다. 그렇다면 이를 사용하고 이점을 얻는 가장 좋은 방법은 Github Actions를 이용하는 것입니다. 생성 및 배포를 포함하여 설치 방법에 대한 자세한 내용을 보려면 brunoluiz/urlzap-github-action 을 방문하세요.
️ 저장소에서 Github 페이지를 수동으로 활성화해야 할 수도 있습니다! 자세한 내용은 Github 페이지 가이드를 참조하세요.
Github Actions가 적합하지 않은 경우 대신 다음 수동 프로세스를 시도해 보세요.
Github 페이지를 활성화하고 정적 HTML 파일이 위치할 지점을 설정하세요. 자세한 내용은 Github 페이지 가이드를 참조하세요.
config.yml 설정
커밋하고 main 에 푸시
Github Pages 브랜치(보통 gh-pages )를 체크아웃하고 git reset --hard origin/main 실행하세요(이렇게 하면 HEAD가 master 로 재설정됩니다)
urlzap generate 실행
커밋 및 푸시
다음 스크립트는 위 단계에 설명된 내용을 따릅니다.
#!/bin/bash# 변경 사항을 추가, 커밋 및 푸시git add config.yml git commit -m 'chore: update config.yml'git push -u Origin main# gh-pages 분기를 maingit checkout gh-pages와 동일하게 만듭니다. git Reset --hard Origin/main# 파일 생성urlzap generate# 생성된 파일 추가, 커밋 및 푸시git add --all git commit -m '일: HTML 파일 업데이트'git push -u Origin gh-pages --force