Github Pages에서 HTTP 404를 수정하는 방법?


166

gh-pages지사의 GitHub 저장소는 다음과 같습니다 . 모든 것이 좋아 보입니다 index.html. 내 CSS, JS 및 사진 폴더가 있습니다.

그러나 http://roine.github.com/p1에 액세스 하면 HTTP 404를 찾을 수 없습니다.

어떤 설명과 해결책?


2
나는 당신이 문서 를 따른다고 가정 합니까? 이메일을 받았습니까?-404에서 : "페이지가 작성되면 이메일을 보내드립니다. 페이지를 사용할 수있을 때까지 최대 10 분이 걸릴 수 있습니다."
— David Cain

생성 된 페이지를 시도했지만 정상적으로 작동했습니다. 그런 다음 gh-pages 분기를 제거하고 사용자 정의 HTML로 다시 빌드했습니다. 나는 적어도 1 시간 이후로 기다리고있다
— Jonathan de M.

1
로 시도하십시오 https. 그것이 작동한다면 몇 시간 후에http
— Rohit Suthar

1
https 트릭은 다른 방식으로 나를 위해 일했습니다. 나는 모든 것을 올바르게하고 설정 페이지에서 사이트가 게시되었다고 말하고 올바른 URL을주었습니다. 그러나 404를 계속 제공합니다. URL을 http로 변경하고 작동 한 다음 https도 작동했습니다. 먼저 "활성화"하기 위해 http 사이트에 액세스해야 할 것 같습니다.
— dracodoc

2
나를 위해 그것은 10-20 분 후에 일하기 시작했습니다. 시간이 걸립니다. 그러니 인내하십시오.
— MechaCode

답변:


182

나는 모든 파일을 단 하나만 커밋했다. 빈 커밋을 푸시하고 페이지를 새로 고쳤으며 작동했습니다.

git commit --allow-empty -m "Trigger rebuild"
git push

@Hendrikto가 주석에서 지적했듯이 이것이 작동하지 않으면 Github 상태 페이지 를 확인하고 GitHub 페이지가 작동하는지 확인하십시오.


2
나는 npm 패키지 angular-cli-ghpages를 사용하고 있었고 index.html 파일에 공간을 추가하고 "npx ngh"명령을 다시 실행하여 동일한 영광스러운 결과를 얻었습니다. 고마워요, 이것은 나를 혼란스럽게했고 당신의 대답은 저에게 이것을하도록 영감을주었습니다.
— Patrick Graham

명령 행을 사용하지 않으려면 웹 인터페이스에서 README.md 디렉토리를 편집하면됩니다.
— Christophe Le Besnerais

2
Github 자체에 문제가있을 수도 있습니다. 이 페이지 는 Github의 상태를 알려줍니다. 나는 같은 문제가 있었고 아무런 수정도 없었다. 상태 페이지에 "성능 저하"라고 표시되어 서버가 다시 완전히 작동 할 때까지 기다려야했습니다.
— Hendrikto

좋은 지적 @ 헨드릭 토, 답변에 귀하의 의견에 대한 참조를 추가했습니다.
— Nycen

77

필자의 경우 이름이 _(와 같은 _css및 _js)로 시작하는 폴더가 있었으며 GH 페이지는 Jekyll 처리 규칙에 따라 무시합니다. Jekyll을 사용하지 않는 경우 해결 방법은 이름이 지정된 파일을 배치하는 것입니다..nojekyll 루트 디렉토리에 입니다.


4
당신이 지킬를 사용하지 않는 경우 .nojekyll가 필수입니다, 여기에 워드 프로세서 : github.com/blog/572-bypassing-jekyll-on-github-pages
— Claudiu 콘스탄틴

2
감사합니다. github에 이메일을 보냈고 pages.github.com (.nojekyll 파일은 언급되지 않음) 에서 가이드를 업데이트하도록 요청했습니다
— sunyata

1
감사! Vue 앱에 필요했지만 vue-cli deploy guide에는 언급되지 않았습니다.
— Ondřej Ševčík 2016 년

이것은 나를 위해 그것을 고쳤다. 내 사용자 사이트는 원래 사이트없이 작동했지만 작동을 멈췄습니다. 온라인으로 파일을 추가하고 커밋 할 수도 있습니다. 나는 이것을하고 새로 고쳤으며 즉시 작동했습니다.
— bot19

@Supuhstar 감사합니다 형제. 당신은 내 생명을
— 구합니다

73

Github 페이지의 404 페이지를 수정하기 위해 여기 포크 에 대한 모든 트릭을 수행 했습니다 . 하지만 404'ing 유지했다.

Finaly는 내 브라우저 가 웹에 10 분 전에 캐시 를 유지하지 않는다는 것을 발견했습니다 .

/index.htmlURL 끝에 추가 하면 표시되고 문제가 해결되었습니다.

https://username.github.io/index.html


1
이것은 나를 위해 일했습니다. 메인 GitHub 페이지 페이지 의 지침에 따라 사이트를 만들었 으므로 실망 스럽습니다.
— CGK

1
감사! 나는 같은 문제가 있었다. /index.html을 추가해야한다는 것은 기이합니다.
— Raja Rao

1
소프트 캐시 지우기를 수행했지만 작동하지 않지만 /index.html을 추가하면 효과가 있습니다. 감사합니다
— Prince Tegaton

1
나에게도 효과가 있었지만 이전에는 결코 발생하지 않았으며 현재 username.github.io 와 username.github.io/ <additional
— Sanchit Batra

개발자 콘솔을 열고 URL에서 index.html을 강제로 실행해야했습니다. 감사합니다 o /
— heavyrick

51

4 개월 전에 저는 지원팀에 연락하여 문제가 있다고 말했고 일시적으로 문제를 해결했습니다 (현재 커밋에 대해).

오늘은 다시 시도

  1. github에서 gh-pages 분기를 삭제했습니다.

    git push origin --delete gh-pages

  2. 로컬에서 gh-pages 분기를 삭제했습니다.

    git branch -D gh-pages

  3. 나는 자식을 다시 초기화했다.

    git init

  4. 현지에서 지점을 다시 만들었습니다.

    git branch gh-pages

  5. gh-pages 브랜치를 github로 푸시했습니다.

    git push origin gh-pages

제대로 작동합니다. 마지막으로 페이지에서 파일을 업데이트 할 수 있습니다.


32
분명히, 당신은 당신의 지역 지점을 삭제할 필요가 없습니다. 그냥 git checkout gh-pages ; git push origin --delete gh-pages ; git push origin끝났어.
— 흥미롭게도

4
원격 지점을 삭제하고 광산을 다시 밀면 문제가 해결되었습니다. 1 분 후에 페이지가 표시되었습니다.
— Kulbi

나는 그것이 "고아"지부라고 생각합니다
— 미래의 길

원점 ( "gh-pages")을 삭제하고 모든 것을 다시 받았습니다. 나를 위해 일했다!
— wle8300

34

아직 GitHub 페이지 설정 탭에서 Jekyll 테마를 선택하지 않은 경우. 분명히 이것은 당신이 지킬를 사용하지 않는 경우에도 필요 페이지 사이트.

GitHub 설정 스크린 샷


8
나는 404 찾을 수 없음을 받고 있었고, 난 중복 문제 내 시도 문서화 여기에 대한 답변에서 제안 된 다른 솔루션의 모든 여덟 시도하는 데 : GitHub의 페이지에서 찾을 수 없음 (404)의 결과로 매우 간단한 HTML을 . 크리스의 19 번째 대답은 저를 위해 고쳤습니다. GitHub Pages는 훌륭한 서비스입니다. 문서가 너무 나쁘다는 것은 부끄러운 일입니다.
— 덤블 다드

3
구성표를 선택하는 것만으로는 충분하지 않으며, gh-pages나중에 업데이트를 트리거하기 위해 지점에서 새 커밋을 만들어야합니다 !
— sschuberth

20

gh-pages지점 과 레포를 포크 한 후에도 같은 문제가있었습니다 . index.html포크의 gh-pages브랜치 에 새로운 커밋 (공백 만 있음 )을 밀어서 고칠 수있었습니다 .


"index.html"에 공백을 넣고 커밋하고 변경 사항을 적용했습니다. 아무 일도하지. 파일 이름에서 공백을 제거하고 변경 사항을 커밋하고 다시 밀어 넣었습니다. 감사.
— Nahiyan

또한 github 페이지는 작은 캐싱 창을 사용합니다 (작성시 10 분 :) Cache-Control:max-age=600. 따라서 브라우저가 만료되거나 강제로 새로 고치기 위해 캐시 창을 기다려야 할 수도 있습니다.
— Clay

1
왜 공백이 엉망입니까? 로 빈 커밋을 푸시하십시오 --allow-empty.
— Hendrikto

18

내 경우에는 2017 년 8 월 8 일

  1. 사용자 페이지가 https://github.com/mgravell 인 경우 리포지토리 이름은 mgravell.github.io 여야합니다 .
  2. 루트 아래에서 파일을 만듭니다 index.html

  3. 루트 아래에 폴더 docs를 만들고 CNAME아래 에 파일을 만듭니다 docs(참고 : .txt와 같은 확장자는 없습니다 . 파일 시스템에 확장자가 있는지 확인하십시오)

  4. gh-pages분기는 선택 사항이며 master분기는 충분합니다

자세히 : 공식 문서 확인 : https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/


1
그게했다! 빈 문서 폴더와 빈 CNAME 파일 (확장자 없음)을 추가하면 트릭이되었습니다!
— Jose A

CNAME도 누락되었습니다 :)
— Frexuz

CNAME 파일이 비어 있어야합니까? 그렇지 않다면 무엇을해야합니까?
— dumbledad 2009 년

@dumbledad 빈 파일은 괜찮을 것입니다
— Timeless

15

약 10 분에서 1 시간 정도 기다리십시오. 여전히 작동하지 않으면 github에 문의하십시오. 보통 그것은 그들의 끝에 문제입니다. 그러나 급한 경우에는 "?"를 추가하여 열려고 시도 할 수 있습니다. URL 끝에 물음표. 쿼리가 리소스를 검색하도록합니다. 이처럼 :

http://roine.github.com/p1?


14

내 페이지도 404를 유지했습니다. 지원팀에 연락했으며 URL이 대소 문자를 구분한다고 지적했습니다. 내 문제를 해결했습니다.


2
나는 지원에 연락하기 전에 자본의 유무에 관계없이 이미 시도했다
— Jonathan de M.



2

제 경우에는 프로젝트 설정으로 이동하여 github 페이지를 활성화해야했습니다. 기본 설정은 꺼져 있습니다



2

제 경우에는 위의 모든 제안이 정확했습니다. 마크 다운 파일이 있고 올바른 것처럼 보이지만 404를 반환하는 소수를 제외하고 대부분의 페이지가 작동했습니다. 이 페이지에서 나를 위해 고친 것은 다음과 같습니다.

  • 한 페이지에 포함되지 않은 특수 문자가 몇 개있었습니다. UTF-8 때문에 GitHub 페이지에서 렌더링 할 수 없었습니다. 이 문자를 업데이트 / 제거하고 새로운 커밋을 푸시하면 문제가 해결되었습니다.
  • 다른 페이지 '에서 제목을 둘러싼 아포스트로피가 있음을 발견하고 제거했으며 페이지 내용이 잘 표시되기 시작했습니다.

2

나는 typedocs 에이 정확한 문제가있었습니다. README.md는 작동했지만 내 문서 문자열에 의해 생성 된 실제 문서는 표시되지 않았습니다. 404 Github Pages 화면이 나타납니다.

이 문제를 해결하려면 빈 파일을 / docs 디렉토리 (또는 문서를 생성 할 때마다)에 놓고 호출하십시오. .nojekyll

확인하려면 파일 구조가 다음과 같아야합니다.

./docs/.nojekyll  # plus all your generated docs

이것을 원격 Github 저장소로 푸시하면 링크가 작동합니다.

또한 Github 설정에서 선택했는지 확인하십시오 :

Settings -> Github Pages -> Source -> master brach /docs folder

문서 프레임 워크에 따라 문서를 업데이트 할 때마다이 파일을 다시 작성해야 할 수도 있습니다. 이것은 typedocs를 사용하고 package.json 파일에서 매번 .nojekyll 파일을 작성하는 예입니다.

# package.json

      "scripts": {
        "typedoc": "typedoc --out docs src && touch docs/.nojekyll"
      },

1

이 문제가 나타나기 전에 도메인을 연결했습니다. 나는 지사 gh-pages를 저지르고 밀어 내 문제를 해결했다. 새로운 커밋은 jekyll이 귀하의 페이지를 재구성하도록합니다.


1

제 경우에는 URL이 상당히 길었습니다. 따라서 한계가 있다고 생각합니다. 내 사용자 지정 하위 도메인에 넣고 작동했습니다.


1

404조차도 모든 것이 옳아 보인다면 https / http로 전환하십시오.

원래 질문에 URL이 잘못되었습니다. 일반적으로 저장소 설정을 확인하고 생성 된 사이트에 대한 올바른 URL을 찾을 수 있습니다.

그러나 모든 것이 올바르게 설정되어 있고 설정 페이지에 게시되었다고 말했지만 여전히 404를 보았습니다.

@Rohit Suthar의 의견에 감사드립니다 (의견은 https를 사용했지만) URL을 http로 변경하고 작동 한 다음 https도 작동했습니다.


1

개인 저장소에서 처음으로 gh-pages 분기를 github에 추가하고 푸시하면 github 페이지의 설정이 gh-pages 분기가 게시됨을 나타 내기 위해 자동으로 변경되었지만 github.io에는 녹색 또는 파란색 막대가 없습니다. URL 및 맞춤 도메인 옵션이 없습니다.

소스를 마스터로 전환하고 소스를 gh- 페이지로 신속하게 다시 전환 한 후에야 실제로 게시 된 URL이 포함 된 녹색 막대로 업데이트되었습니다.


1
도움이됩니다. 내 프로젝트는 처음 에는 비공개였으며 그 상태에서 프로젝트를 Github 페이지로 푸시하고 404 (ofc)를 얻었습니다. 로 전환 한 후 gh-pages로 master에서 다시 다음과 master에 gh-pages모든 일을 잘하고 응용 프로그램을 시작했다.
— Zrna

1

이 오류의 다른 변형 :

튜토리얼 후 첫 번째 Github 페이지를 설정했지만 파일 readme.md을 내 관점에서보다 의미있는 이름으로 지정했습니다.welcome.md .

그것은 치명적인 실수였습니다.

GitHub의 리포지토리를 탐색 할 때와 다르지 않은 index.md(또는 index.html) 가 없으면 README 파일을 사이트의 인덱스로 사용합니다 .

에서 GitHub의 페이지를 출판, 지금은 쉽게로 1, 2, 3

나는 다음 사용하여 내 웹 사이트의 페이지에 액세스 할 수 있었다 published at링크 에 지정된를 Repository/ Settings/ GitHub Pages다음 welcome.html이하 welcome.


1

어떤 이유로 든 GitHub 페이지 배포가 오늘 작동을 멈췄습니다 (2020 년 5 월 5 일). 이전에는 HTML이없고 md 파일 만있었습니다. index.html을 만들려고했는데 즉시 페이지를 게시했습니다. index.html을 제거한 후에도 발행물이 계속 작동합니다.


1

제 경우에는 gh-pages 분기를 선택하기 위해 반응해야했습니다.

여기에 이미지 설명을 입력하십시오


0

저장소의 설정 섹션으로 이동하여 소스 섹션에서 마스터 분기를 선택하고 페이지를 새로 고친 후 저장 버튼을 클릭하면 페이지의 링크가 표시됩니다!.


0

나는이 문제 (404)에 직면했고 근본 원인은 내 파일의 이름이이었다 INDEX.md. Windows에서 개발 중이고 로컬 Jekyll 사이트가 작동했습니다 (Windows는 기본적으로 파일 이름을 대소 문자를 구분하지 않기 때문에). Github에 푸시했을 때 작동하지 않았습니다. 의 이름을 바꾸면 문제가 해결 INDEX.md되었습니다 index.md.


0

또 다른 시나리오 :

  • 이름이 지정된 리포지토리가있는 조직 페이지 (프로젝트 페이지 아님) 사용 <orgname>.github.io
  • master지점 에서 마크 업으로 소스 문서 (asciidoc)
  • Travis CI에서 소스 doc 파일을 가져와 master생성 된 html 파일을 gh-pages분기로 푸시

gh-pages지점은 생성 된 HTML 페이지로 업데이트됩니다. GitHub Environment탭은 조직 페이지에 대한 링크를 제공합니다. 클릭하면 a가 404됩니다.

https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/ 에 따르면

이 유형의 저장소 이름을 가진 사용자 및 조직 페이지는 master지점 에서만 공개됩니다.

이것을 올바르게 이해하면 GitHub 페이지는 gh-pages지점이 아닌 사이트 User또는 Organization사이트를 만드는 경우 지점 에서 게시되지 않습니다Project 사이트.

레포로 이름을 바꿨습니다. Project사이트가 아닌 Organization사이트gh-pages 지점이 예상대로 게시되었습니다.


0

나는 .. 아주 이상한 문제 .. 내 HTML 후 공간과 같은 문제가 있었다했다 제목

> <title>
> 
> <script>

공간을 제거한 후 고정

> <title>
> <script>

0

또한 GitHub 페이지는 현재 Git LFS를 지원하지 않습니다 . 따라서 Git LFS로 커밋 된 GitHub 페이지에 이미지 (또는 다른 이진 자산)가있는 경우 해당 파일에 대해 404를 찾을 수 없습니다.

이것은 Doxygen 또는 유사한 도구로 생성 된 문서에 매우 일반적입니다.

이 경우 해결책은 단순히 Git LFS로 해당 파일을 커밋하지 않는 것입니다.


0

제 경우에는 저의 저장소는 비공개였습니다. 저장소를 공개하고 모든 단계를 다시 수행하십시오.


0

또한이 문제에 직면하여 페이지가 404를 얻습니다. 그런 다음 저장소 에 README.md 를 추가 하면 404가 사라졌습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.