I had this exact problem with typedocs. The README.md worked but none of the actual docs generated by my doc strings displayed, I just got a 404 Github Pages screen.
To fix this, just place a empty file in your /docs directory (or wherever you generate your docs) & call it .nojekyll
To confirm, your file structure should now look like:
./docs/.nojekyll # plus all your generated docs
Push this up to your remote Github repo and your links etc should work now.
Also make sure you have selected in your Github settings:
Settings -> Github Pages -> Source -> master brach /docs folder
Depending on your doc framework, you probably have to recreate this file each time you update your docs, this is an example of using typedocs & creating the .nojekyll file each time in a package.json file:
# package.json
"scripts": {
"typedoc": "typedoc --out docs src && touch docs/.nojekyll"
},
HTTP 404 error is a common issue encountered by users when trying to access a Github Pages site. This error occurs when the server can’t find the requested page or resource, meaning the URL you entered may be incorrect, the page has been moved or deleted, or the URL has been misspelled. In this case, it’s essential to know how to fix the error to access the content on the Github Pages site.
Method 1: Check the URL
If you are encountering HTTP 404 error on your Github Pages, it means that the page you are trying to access does not exist. The most common cause of this error is when the URL is incorrect or misspelled. In this tutorial, we will show you how to fix HTTP 404 error on Github Pages by checking the URL.
Steps:
- Check the URL for any typos or errors.
<!DOCTYPE html>
<html>
<head>
<title>My Github Page</title>
</head>
<body>
<h1>Welcome to my Github Page</h1>
</body>
</html>
-
Make sure that the file name and extension are correct. For example, if you are trying to access a file named “index.html”, make sure that the file name is spelled correctly and that it has the “.html” extension.
-
Check the file path. If the file is in a subdirectory, make sure that the path is correct. For example, if the file is in a subdirectory named “pages”, the URL should be “https://yourusername.github.io/pages/filename.html”.
-
If you have recently made changes to your Github Pages, make sure that the changes have been committed and pushed to the repository.
-
If you are still encountering HTTP 404 error, try clearing your browser cache and cookies. Sometimes, cached files can cause issues with Github Pages.
-
If none of the above steps work, try rebuilding your Github Pages. Sometimes, Github Pages can have issues that require a rebuild to fix.
By following these steps, you should be able to fix HTTP 404 error on Github Pages by checking the URL.
Method 2: Ensure the Repository is Public
To fix the HTTP 404 error on Github Pages, you can try ensuring that the repository is public. Here are the steps to do this:
- Go to your repository on Github and click on “Settings”.
- Scroll down to the “GitHub Pages” section.
- Under “Source”, select “master branch” or “main branch”.
- Make sure that the repository is set to “Public”.
- Click on “Save”.
name: Github Pages
on:
push:
branches:
- master
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Build and deploy
uses: JamesIves/github-pages-deploy-action@4.1.1
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH: gh-pages
FOLDER: .
In the above example, we have a YAML configuration file for Github Pages. Note that we have specified the branch to be “master” under the “on” section. Also, we are using the “github-pages-deploy-action” to build and deploy our pages. Make sure to replace the “GITHUB_TOKEN” with your own token.
<!-- Example HTML code for Github Pages -->
<!DOCTYPE html>
<html>
<head>
<title>My Github Page</title>
</head>
<body>
<h1>Hello World!</h1>
<p>Welcome to my Github Page.</p>
</body>
</html>
In the above example, we have some basic HTML code for our Github Pages. Note that the title is set to “My Github Page” and we have a heading and a paragraph.
That’s it! By ensuring that the repository is public, you should now be able to access your Github Pages without encountering the HTTP 404 error.
Method 3: Verify the Branch Settings
If you are encountering the HTTP 404 error on your Github Pages, one of the possible solutions is to verify your branch settings. Here are the steps to do it:
- Go to your Github repository and click on “Settings”.
- Scroll down to the “Github Pages” section.
- In the “Source” section, select the branch that contains your website files. By default, it should be the “main” branch.
- Make sure that the folder path is correct. It should be the root directory if your website files are located in the main branch.
- Click on “Save”.
Here is an example code for verifying the branch settings:
- Branch: main
- Folder: /
In this example, the website files are located in the root directory of the “main” branch.
By verifying the branch settings, you ensure that Github Pages is looking at the correct branch and folder path for your website files. This can help resolve the HTTP 404 error.
Note that it may take a few minutes for the changes to take effect. If the error persists, you may need to check other possible causes such as file names and paths, permissions, or DNS settings.
Method 4: Confirm the Project Pages Source
Here are the steps to fix HTTP 404 on Github Pages using “Confirm the Project Pages Source”:
- Go to your repository on Github and click on the “Settings” tab.
- Scroll down to the “Github Pages” section and make sure that the source is set to “master branch” or the branch where your code resides.
- If the source is already set correctly, try refreshing the page or waiting a few minutes for the changes to take effect.
- If the issue persists, check your repository’s code to ensure that the file path and name are correct.
- Make sure that the file is in the correct directory and that it is spelled correctly.
- Double-check that the file extension is correct (e.g. “.html” for HTML files).
- If all of the above steps fail, you can try using the “Confirm the Project Pages Source” feature. This feature allows you to confirm that your Github Pages source is correct by creating a file called “.nojekyll” in the root directory of your repository.
Here is an example of how to use “Confirm the Project Pages Source” with code:
-
Open your terminal or command prompt and navigate to your local repository.
-
Create a new file in the root directory called “.nojekyll” by typing the following command:
-
Add and commit the new file to your repository by typing the following commands:
git add .nojekyll git commit -m "Added .nojekyll file to confirm Github Pages source"
-
Push the changes to your Github repository by typing the following command:
-
Wait a few minutes for the changes to take effect, then try accessing your Github Pages site again. The HTTP 404 error should be resolved.
That’s it! By following these steps, you should be able to fix HTTP 404 errors on Github Pages using “Confirm the Project Pages Source”.
Method 5: Redeploy the Github Pages Site
To fix the HTTP 404 error on Github Pages, you can try redeploying the Github Pages site. Here are the steps to do it:
- Open your Github repository and go to the “Settings” tab.
- Scroll down to the “Github Pages” section and check the source of your Github Pages site. It should be set to “main” or “master” branch.
- If the source is correct, go to the “Actions” tab and select “Deploy Github Pages” workflow.
- Click on the “Run Workflow” button and wait for the deployment process to finish.
- Once the deployment is completed, go back to the “Settings” tab and scroll down to the “Github Pages” section. You should see a green message that says “Your site is published at [your Github Pages URL]”.
Here is an example code for the Github Actions workflow file:
name: Deploy Github Pages
on:
push:
branches:
- main # Replace with your branch name
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Build and deploy site
uses: JamesIves/github-pages-deploy-action@4.1.2
with:
branch: main # Replace with your branch name
folder: _site # Replace with your build output folder
In this example, we use the “github-pages-deploy-action” to build and deploy the Github Pages site. The “branch” parameter specifies the branch to deploy, and the “folder” parameter specifies the build output folder.
Hope this helps you fix the HTTP 404 error on Github Pages!
Если вы получили 404 Page not Found
Когда вы публикуете свой сайт на GitHub Pages, то GitHub даёт вам ссылку вида https://USERNAME.github.io/REPONAME
, где USERNAME
— ваш ник на GitHub, а REPONAME
— название репозитория на GitHub, куда вы залили свой сайт.
Это ссылка только на сам репозиторий, в котором много файлов и GitHub не знает, какой из них нужно показать. Если бы в репозитории в корне лежал файл index.html
, то GitHub бы догадался и этот файл открылся бы по ссылке https://USERNAME.github.io/REPONAME
. Но если ваш index.html
где-то спрятан, например, в папке pages/
— Гитхабу нужно явно показать, где искать нужный .html
файл: https://USERNAME.github.io/REPONAME/pages/index.html
index.html
— это особое название для файла и GitHub Pages догадается показать его, даже если в ссылке его не указать: https://USERNAME.github.io/REPONAME/pages
.
GitHub обновляет сайт раз в 10 минут
Ответ об этом на SO. Если вы допустили какую-то ошибку и что-то поправили в файлах — придётся ждать целых 10 минут, чтобы подгрузилась исправленная версия
После каждого изменения в коде сайта ждите минимум 10 минут, прежде чем заходить на сайт и тестировать эти изменения. А лучше всего всё делать на своём компьютере и заливать на GitHub Pages уже готовую версию.
Если ссылки на сайте не открываются
Вам поможет статья про относительный адрес. Делайте ссылки относительными, а не абсолютными, чтобы сайту было всё равно где он хостится: хоть на 127.0.0.1, хоть на GitHub Pages. Если всё равно ошибка — и не получается написать правильный путь до файла — вот статья как это чинить
Попробуйте бесплатные уроки по Python
Получите крутое код-ревью от практикующих программистов с разбором ошибок и рекомендациями, на что обратить внимание — бесплатно.
Переходите на страницу учебных модулей «Девмана» и выбирайте тему.
Github Pages is a fantastic platform for hosting static websites and web applications.
The platform is user-friendly, free, and offers a seamless integration with Github repositories, making it a go-to choice for many developers and website owners.
However, despite its numerous benefits, Github Pages users often face the HTTP 404 error, which can be frustrating, especially for those who are new to the platform.
In this article, we will discuss what HTTP 404 error is, why it occurs, and most importantly, how to fix it on Github Pages.
What is HTTP 404 Error?
HTTP 404 error is a standard HTTP response code that indicates that the requested resource could not be found on the server.
In other words, the server cannot find the requested page, and as a result, it returns the HTTP 404 error message.
This error message is displayed when you try to access a web page that doesn’t exist on the server.
Why Does the HTTP 404 Error Occur on Github Pages?
The HTTP 404 error on Github Pages can occur for several reasons, including but not limited to:
- Typographical Errors: Typographical errors in the URL are a common cause of HTTP 404 errors. This occurs when you misspell the URL, or if the URL case is incorrect.
- Deleted Pages: If you delete a page from your Github Pages website, and someone tries to access that page, they will receive an HTTP 404 error.
- Moved Pages: If you move a page from one location to another, and someone tries to access the old URL, they will receive an HTTP 404 error.
- Incorrect Repository Settings: If the repository settings on Github Pages are incorrect, it can result in HTTP 404 errors.
Here are some of the methods you can use to fix the HTTP 404 error on Github Pages:
- Check the URL: The first step in fixing the HTTP 404 error is to check the URL. Make sure that the URL is correct and that there are no typographical errors. If the URL is correct, but the error persists, try accessing the page using a different browser.
- Redirect Deleted or Moved Pages: If you have deleted or moved a page, you should redirect the old URL to the new location. This can be done using a .htaccess file or by using a redirect plugin if you’re using a content management system.
- Check Repository Settings: Make sure that your repository settings are correct. This includes the repository name, the branch you’re using, and the path to your website files.
- Verify Your Domain Name: If you’re using a custom domain for your Github Pages website, make sure that the domain name is correctly configured. You should also check that the DNS settings are correct.
Conclusion
The HTTP 404 error on Github Pages can be a frustrating experience, but it can be easily fixed by following the steps outlined in this blog post.
Whether it’s a typographical error, a deleted page, a moved page, or incorrect repository settings, there’s a solution that can help you fix the error and get your website up and running again.
With this guide, you should be able to troubleshoot the HTTP 404 error on Github Pages with ease and get back to what matters most – creating great websites and web applications.
Вот мой репозиторий GitHub в ветке gh-pages
. Все выглядит хорошо, у меня есть мои index.html
, мои CSS, JS и папки с изображениями.
Но когда я захожу на http://roine.github.com/p1, я получаю HTTP 404 не найден.
Любое объяснение и решение?
Ответ 1
Четыре месяца назад я связался с поддержкой, и они сказали мне, что это проблема на их стороне, они временно исправили ее (для текущей фиксации).
Сегодня я снова попробовал
-
Я удалил ветвь gh-pages на github
git push origin --delete gh-pages
-
Я удалил ветвь gh-pages на локальном
git branch -D gh-pages
-
Я повторно инициализировал git
git init
-
Я воссоздал ветвь на локальном
git branch gh-pages
-
Я нажал ветвь gh-pages на github
git push origin gh-pages
Хорошо работает, я могу, наконец, обновить свои файлы на странице.
Ответ 2
У меня было только одно коммит со всеми моими файлами. Я нажал пустую фиксацию, обновил страницу, и она сработала.
git commit --allow-empty -m "Trigger rebuild"
git push
Ответ 3
В моем случае у меня были папки, имена которых начинались с _
(например, _css
и _js
), которые GH Pages игнорируют в соответствии с правилами обработки Jekyll. Если вы не используете Jekyll, обходным путем является размещение файла с именем .nojekyll
в корневом каталоге.
Ответ 4
Я сделал все трюки здесь, на My Fork, чтобы исправить страницу 404 на Github Page, но она продолжала работать 404.
Наконец, я обнаружил, что мой браузер вряд ли сохранит 10-минутный кеш, прежде чем он появится в сети.
Просто добавьте /index.html
в конец URL-адреса, чтобы он обнаружился и /index.html
дело.
https://username.github.io
/index.html
Ответ 5
Если вы этого еще не сделали, выберите тему Jekyll на вкладке настроек GitHub Pages. Очевидно, это необходимо, даже если вы не используете Jekyll для своего сайта Pages.
Ответ 6
У меня была такая же проблема после разворачивания репо с ветвью gh-pages
. Я смог исправить, просто нажав новую фиксацию (просто пробел в index.html
) в ветки fork gh-pages
.
Ответ 7
В моем случае 8 августа 2017 года
- если ваша страница пользователя – https://github.com/mgravell, имя вашего репо должно быть mgravell.github.io
-
под root создайте файл
index.html
-
под root создайте папку
docs
, создайте файлCNAME
вdocs
(примечание: НЕТ расширения, например .txt, убедитесь, что ваша файловая система имеет расширение) -
Ветка
gh-pages
является необязательной, достаточно веткиmaster
больше: проверьте официальные документы здесь: https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/
Ответ 8
Мои страницы также содержали 404. Контактная поддержка, и они указали, что адрес чувствителен к регистру; решил мою проблему.
Ответ 9
Просто подождите около десяти минут до одного часа. Если это все еще не работает, свяжитесь с github. Обычно это проблема в их конце.
Но, если вы спешите, вы можете попробовать открыть, добавив “?” вопросительный знак в конце URL. Это заставляет запрос искать ресурс. Нравится:
http://roine.github.com/p1?
Ответ 10
Если вы уверены, что ваша структура верна, просто нажмите пустую фиксацию или обновите файл index.html с некоторым пространством, это сработает!
Ответ 11
Добавьте следующее в начало файла index.html
<!DOCTYPE html>
Ответ 12
Я получил сайт для работы, удалив папку “username.github.io” на моем компьютере, снова пройдя шаги, включая изменение файла index/html.
Моя ошибка (я думаю) заключается в том, что я изначально клонировал ” https://github.com/username/username.github.io .git” вместо https://github.com/username/username.github.io (нет “.git” )
Ответ 13
В моем случае все предложения выше были правильными. У меня работало большинство страниц, кроме немногих, которые возвращали 404, даже если там есть файлы уценки, и они казались правильными. Вот что исправило это для меня на этих страницах:
- На одной странице было несколько специальных символов, которые не являются частью
UTF-8
и я думаю, что именно поэтому страницы GitHub не смогли их отобразить. Обновление/удаление этих символов и добавление нового коммита исправили это. - На другой странице, я обнаружил, что там было апостроф
'
окружая название, я удалил их и содержимые страницы начала показывать в порядке
Ответ 14
Я связал свой домен до появления этой проблемы. Я совершил и нажал на ветки gh-pages, и это решило мою проблему. Новые коммиты заставляют jekyll восстанавливать ваши страницы.
Ответ 15
В моем случае URL был довольно длинным. Итак, я думаю, что есть предел. Я поместил его в свой поддомен, и он сработал.
Ответ 16
в моем случае мне пришлось перейти к настройкам проекта и включить страницы github. Значение по умолчанию выключено
Ответ 17
Если вы видели 404, даже если все выглядит правильно, попробуйте переключить https/http.
Исходный вопрос имеет неправильную ссылку, обычно вы можете проверить настройки репо и найти правильный URL для созданного сайта.
Однако у меня все настроено правильно, и на странице настроек сказано, что оно опубликовано, тогда я все еще видел 404.
Спасибо за комментарий @Rohit Suthar (хотя этот комментарий должен был использовать https), я изменил URL на http, и это сработало, а затем https сработало.
Ответ 18
В частном репо, когда я впервые добавил и переместил свою ветку gh-pages в github, настройки для страниц github автоматически изменились, чтобы указать, что ветка gh-pages будет опубликована, но нет зеленой или синей полосы с github.io URL и нет пользовательских параметров домена.
Только когда я переключил источник на master и быстро переключил источник обратно на gh-pages, он фактически обновился зеленой полосой, содержащей опубликованный URL.
Ответ 19
Перейдите в раздел настроек своего репозитория, выберите основную ветку в разделе “Источник” и нажмите кнопку “Сохранить”, после чего обновите страницу, и вы сможете увидеть ссылку своей страницы !.
Ответ 20
Я тоже столкнулся с этой проблемой (404), и основной причиной было то, что мой файл назывался INDEX.md
. Я разрабатывал для Windows, и мой локальный сайт Jekyll работал (поскольку Windows по умолчанию обрабатывает имена файлов без учета регистра). Когда его толкнули в Github, это не сработало. Как только я переименовал INDEX.md
в index.md
, все index.md
хорошо.
Ответ 21
Еще один сценарий:
- используя страницу организации (не страницу проекта) с хранилищем с именем
<orgname>.github.io
- исходные документы в виде разметки в
master
ветке (asciidoc) - Travis CI извлекает исходные doc файлы из
master
и отправляет сгенерированные html файлы в веткуgh-pages
Ветвь gh-pages
обновляется сгенерированными html-страницами. Вкладка GitHub Environment
содержит ссылку на страницу организации. Нажав на это, вы 404
.
Согласно https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/
Страницы пользователя и организации с таким именем репозитория публикуются только из
master
ветки
Если я правильно понимаю, страницы GitHub не будут публиковаться из ветки gh-pages
если вы создаете сайт User
или Organization
а не сайт Project
.
Я переименовал свое хранилище, чтобы сделать его сайтом Project
а не сайтом Organization
а затем ветка gh-pages
была опубликована, как и ожидалось.
Ответ 22
У меня была та же проблема.. Очень странная проблема.. Мой HTML был с пробелом после заголовка
> <title>
>
> <script>
Исправлено, после удаления пробела
> <title>
> <script>
Ответ 23
Кроме того, страницы GitHub в настоящее время не поддерживают Git LFS. Таким образом, если у вас есть изображения (или другие двоичные ресурсы) на страницах GitHub, зафиксированные с помощью Git LFS, вы получите 404, не найденных для этих файлов.
Это будет довольно распространено для документации, сгенерированной с помощью Doxygen или подобного инструмента.
Решение в этом случае – просто не фиксировать эти файлы с помощью Git LFS.
Ответ 24
В моем случае мой репозиторий был закрытым. Сделайте хранилище общедоступным и повторите все шаги снова.
Ответ 25
Другой вариант этой ошибки:
Я создал свою первую страницу Github после урока, но дал файлу readme.md
a – с моей точки зрения – более значимое имя: welcome.md
.
Это была роковая ошибка:
Хорошо используйте ваш файл README в качестве индекса сайтов, если у вас нет
index.md
(илиindex.html
), не отличается от того, когда вы просматриваете репозиторий на GitHub.
(из публикации с помощью страниц GitHub, теперь просто 1, 2, 3)
После этого я смог получить доступ к странице своего веб-сайта, используя ссылку published at
, указанную в Repository
/Settings
/GitHub Pages
, за которой следует welcome.html
или более короткая welcome
.