我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

Troubleshooting custom domains and GitHub Pages

You can check for common errors to resolve issues with custom domains or HTTPS for your GitHub Pages site.

GitHub Pages is available in public repositories with GitHub Free, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see "GitHub's products."

本文内容

CNAME errors

Custom domains are stored in a CNAME file in the root of your publishing source. You can add or update this file through your repository settings or manually. 更多信息请参阅“管理 GitHub Pages 网站的自定义域

For your site to render at the correct domain, make sure your CNAME file still exists in the repository. For example, many static site generators force push to your repository, which can overwrite the CNAME file that was added to your repository when you configured your custom domain. If you build your site locally and push generated files to GitHub, make sure to pull the commit that added the CNAME file to your local repository first, so the file will be included in the build.

Then, make sure the CNAME file is formatted correctly.

  • The CNAME filename must be all uppercase.
  • The CNAME file can contain only one domain. To point multiple domains to your site, you must set up a redirect through your DNS provider.
  • The CNAME entry must be the bare domain. For example, www.example.com,blog.example.com, or example.com.
  • The CNAME entry can only be used once on GitHub. For example, if another repository's CNAME file contains example.com, you cannot use example.com in the CNAME file for your repository.

DNS misconfiguration

If you have trouble pointing the default domain for your site to your custom domain, contact your DNS provider.

You can also test whether your custom domain's DNS records are configured correctly. 更多信息请参阅“管理 GitHub Pages 网站的自定义域

Custom domain names that are unsupported

If your custom domain is unsupported, you may need to change your domain to a supported domain. You can also contact your DNS provider to see if they offer forwarding services for domain names.

Make sure your site does not:

  • Use more than one apex domain. For example, both example.com and anotherexample.com.
  • Use more than one www subdomain. For example, both www.example.com and www.anotherexample.com.
  • Use both an apex domain and custom subdomain. For example, both example.com and docs.example.com.

Warning: We strongly recommend not using wildcard DNS records, such as *.example.com. 通配符 DNS 记录将允许任何人在您的其中一个子域上托管 GitHub Pages 站点。

For a list of supported custom domains, see "About custom domains and GitHub Pages."

HTTPS 错误

通过 CNAMEALIASANAMEA DNS 记录正确配置的使用自定义域的 GitHub Pages 站点可通过 HTTPS 进行访问。 更多信息请参阅“使用 HTTPS 保护 GitHub Pages 站点”。

It can take up to an hour for your site to become available over HTTPS after you configure your custom domain. After you update existing DNS settings, you may need to remove and re-add your custom domain to your site's repository to trigger the process of enabling HTTPS. 更多信息请参阅“管理 GitHub Pages 网站的自定义域

If you're using Certification Authority Authorization (CAA) records, at least one CAA record must exist with the value letsencrypt.org for your site to be accessible over HTTPS. 更多信息请参阅 Let's Encrypt 文档中的“证书颁发机构授权 (CAA)”。

URL formatting on Linux

If the URL for your site contains a username or organization name that begins or ends with a dash, or contains consecutive dashes, people browsing with Linux will receive a server error when they attempt to visit your site. To fix this, change your GitHub username to remove non-alphanumeric characters. 更多信息请参阅“更改 GitHub 用户名”。

Browser cache

If you've recently changed or removed your custom domain and can't access the new URL in your browser, you may need to clear your browser's cache to reach the new URL. For more information on clearing your cache, see your browser's documentation.

问问别人

找不到要找的内容?

联系我们