Now インスタンスに独自ドメインを設定する

PaaS の Now は無料プランでも独自ドメインを設定できます。Heroku も然り。

Now の中でドメインを買うこともできますが、予め購入済みであればそれを適用することもできます。今回は、お名前.com で購入してある独自ドメイン (サブドメイン) を使います。

エイリアス設定

(そのほうが見やすいので) 動的に変化する URL を https://myproject.now.sh に固定します。

$ now alias https://myproject-xxxxxxxxx.now.sh myproject

> Success! myproject.now.sh now points to myproject-xxxxxxxxx.now.sh

メインドメインの場合

使いたいドメインがメインドメインであれば、次のコマンドを実行します。

$ now domains add myproject.com

すると、警告として下のエラーメッセージと同様の内容が表示されるようです。以降の手順は「サブドメインの場合」と恐らく同様です。

サブドメインの場合

使いたいのはサブドメインなので、手順を飛ばしてエイリアスを設定します。(now domains add に非対応のため)

$ now alias https://myproject.now.sh www.myproject.com

> Error! We could not alias since the domain myproject.com could not be verified due to the following reasons:
a) Nameservers verification failed since we see a different set than the intended set:
Intended Nameservers Current Nameservers
c.zeit-world.co.uk 01.dnsv.jp ☓
d.zeit-world.org 02.dnsv.jp ☓
e.zeit-world.com 03.dnsv.jp ☓
f.zeit-world.net 04.dnsv.jp ☓
b) DNS TXT verification failed since found no matching records.
name type value
_now TXT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Once your domain uses either the nameservers or the TXT DNS record from above, run again `now domains verify <domain>`.
We will also periodically run a verification check for you and you will receive an email once your domain is verified.
Read more: https://err.sh/now-cli/domain-verification

必ずエラーが発生するので、いずれかの方法でドメインの所有権を証明しなければなりません。

  • ネームサーバを zeit のものに変更する
  • TXT レコードを利用する

ネームサーバをお名前.com から動かすつもりはないので、後者で進めます。

(確認画面がエラーか警告かの違いだろうが、エラーを出さずとも認証のためにメインドメインで now domains add すればよかったのではないか…。)

ドメインの所有者認証

(反映まで間があるので) ネームサーバを更新してから少し時間を空けて、以下のコマンドを実行します。メインドメインが登録されているネームサーバに確認しに行くので、ドメインとして指定するのはメインドメインです。

$ now domains verify myproject.com

> Success! Domain myproject.com was verified using DNS TXT record. [500ms]
  You can verify with nameservers too. Run `now domains inspect myproject.com` to find out the intended set.

サブドメイン登録

ネームサーバで使いたいサブドメインの CNAME レコードに alias.zeit.co. を登録します。お名前.com のネームサーバなら最後のピリオドは不要です。

リダイレクト設定

myproject.com を www.myproject.com にリダイレクトするときなどは設定が必要です。詳しくは以下をご覧ください。

Now をつかおう。
Now(ZEIT now.sh)の簡単な使い方を紹介しています。 ▲ ZEIT Δ Now ログインしている場合、ZEIT のサイトを参照すると Dashboard の表示になり、Now の使用状況を参照できます。 一部は now コマンドの代わりにここから設定可能です。 ※ ZEIT(ツァイト)=▲。Now の提...

最後に

Heroku でも独自のメインドメイン、サブドメインを使うことができますが、Now の何が良かったかというと独自ドメインでもドメイン証明書を発行できることです!(Heroku は $7/month/dyno)

Zero-Downtime Domain Migration - ZEIT Documentation
Migrating your domain from an external service to ZEIT with no downtime, in only a few steps.

Comments