GitLab Pagesのドメイン名、URL、baseurls

このドキュメントでは、GitLab Pagesのプロジェクト名をあなたのウェブサイトのURLに合わせてつける方法を学びます。

GitLab Pagesのデフォルトドメイン名

注:GitLab Pagesを使ってサイトをデプロイするために独自のGitLabインスタンスを使用している場合は、Pagesワイルドカードドメインをシステム管理者に確認してください。このガイドはどのGitLabインスタンスでも有効です。GitLab.com (*.gitlab.io) のPagesワイルドカードドメインを独自のものに置き換えるだけです。

GitLabでGitLab Pagesプロジェクトをセットアップすると、自動的にnamespace.example.ioのサブドメインでアクセスできるようになります。namespaceは、GitLab.comでのあなたのユーザー名か、このプロジェクトを作成したグループ名で定義されます。GitLabセルフマネージドインスタンスの場合は、example.ioをインスタンスのPagesドメインに置き換えてください。GitLab.comの場合は、Pagesドメインは*.gitlab.io.

GitLabページの種類 GitLabで作成されたプロジェクト名 ウェブサイトURL
ユーザーページ username.example.io http(s)://username.example.io
グループページ groupname.example.io http(s)://groupname.example.io
ユーザーが所有するプロジェクトページ projectname http(s)://username.example.io/projectname
グループが所有するプロジェクトページ projectname http(s)://groupname.example.io/projectname
サブグループが所有するプロジェクトページ subgroup/projectname http(s)://groupname.example.io/subgroup/projectname
警告:一般ドメイン名とHTTPSで提供されるネームスペースについては、いくつかの既知の制限があります。 そのセクションを必ずお読みください。

Pagesドメインを明確に理解するには、以下の例をお読みください。

プロジェクトウェブサイトの例

  • ユーザー名johnblog というプロジェクトを作成したので、プロジェクトの URL はhttps://gitlab.com/john/blog/となります。このプロジェクトで GitLab Pages を有効にしてサイトをビルドすると、https://john.gitlab.io/blog/で利用できるようになります。
  • あなたはwebsitesというすべてのウェブサイト用のグループを作成し、このグループ内のプロジェクトをblogと呼びました。プロジェクトの URL はhttps://gitlab.com/websites/blog/です。このプロジェクトで GitLab Pages を有効にすると、サイトはhttps://websites.gitlab.io/blog/の下に置かれます。
  • あなたは、engineeringというエンジニアリング部門のグループを作成し、docsというすべてのドキュメンテーションウェブサイトのサブグループを作成しました。そして、このサブグループ内のプロジェクトをworkflowsと呼びます。プロジェクトの URL はhttps://gitlab.com/engineering/docs/workflows/です。このプロジェクトで GitLab Pages を有効にすると、https://engineering.gitlab.io/docs/workflowsの下にサイトが表示されます。

ユーザーとグループのウェブサイトの例

  • ユーザー名johnで、john.gitlab.ioというプロジェクトを作成しました。プロジェクトの URL はhttps://gitlab.com/john/john.gitlab.ioとなります。プロジェクトで GitLab Pages を有効にすると、ウェブサイトはhttps://john.gitlab.ioで公開されます。
  • グループwebsitesのもとで、websites.gitlab.ioというプロジェクトを作成しました。プロジェクトの URL はhttps://gitlab.com/websites/websites.gitlab.ioとなります。プロジェクトの GitLab Pages を有効にすると、ウェブサイトはhttps://websites.gitlab.ioのもとで公開されます。

一般的な例

  • GitLab.com では、プロジェクトサイトは常にhttps://namespace.gitlab.io/project-name
  • GitLab.comでは、ユーザーやグループのウェブサイトは次のようになります。https://namespace.gitlab.io/
  • GitLab インスタンスでは、上記のgitlab.io を Pages サーバーのドメインに置き換えてください。この情報は、システム管理者に問い合わせてください。

URLとベースウル

すべての Static Site Generator(SSG) のデフォルト設定は、あなたのウェブサイトがそのドメイン (example.com/subdir) のサブディレクトリではなく、(サブ) ドメイン (example.com) の下にあることを想定しています。 したがって、プロジェクトのウェブサイト (namespace.gitlab.io/project-name) を公開するときはいつでも、SSG のドキュメントでこの設定 (ベース URL) を探し、このパターンを反映するように設定する必要があります。

例えば、Jekyll サイトの場合、baseurl は Jekyll 設定ファイル_config.ymlで定義されています。ウェブサイトの URL がhttps://john.gitlab.io/blog/の場合、この行を_config.ymlに追加する必要があります:

baseurl: "/blog"

逆に、私たちのデフォルトの例のいずれかをフォークした後、あなたのウェブサイトをデプロイした場合、すべての例は、プロジェクトのウェブサイトであるとして、baseurlはすでにこのように構成されています。 あなたのユーザーまたはグループのウェブサイトにすることを決定した場合、プロジェクトからこの設定を削除する必要があります。 今述べたJekyllの例では、Jekyllの_config.yml

baseurl: ""

カスタムドメイン

GitLab Pagesはカスタムドメインとサブドメインをサポートしており、HTTPまたはHTTPSで提供されます。 詳しくはGitLab PagesのカスタムドメインとSSL/TLS証明書をご覧ください。