Memo plus Alpha

メモにプラスアルファを加えて価値ある情報に。

ドメイン(含サブドメイン)をさくらVPSに移行する

はじめに

コアサーバーで使っていたドメインをさくらVPSに移行したときのメモです。

大まかな手順:

(1)ファイルをサブドメインごとにフォルダ分けしてVPSサーバーに移行する

(2)さくらVPSコントロールパネルでサブドメインを宣言する

(3)VPSサーバーでサブドメインの振り分けを設定する

(4)ドメイン発行元(今回はバリュードメイン)のネームサーバーを書き換える

サーバーはUbuntuApacheです。

(1)ファイルの移行

まずは旧サーバー(コアサーバー)にあるファイルをさくらVPSサーバーにコピーします(旧サーバーのファイルは残しておく)。このとき、サブドメインのファイルはフォルダごとにまとめておきます(site1, site2, site3のように)。

コピー後にIPアドレスでアクセスして(123.456.789.123/site1のようなアドレス)、ファイルが正常に動くことを確認します。CGIを使っている場合は別途色々と設定が必要です(詳細は省く)。パーミッションも注意しましょう。

※【雑多メモ】ファイルを上書きするときにパーミッションエラーになる場合があります。この場合は、ファイルのオーナーやグループを確認しましょう。FTPで接続している場合、そのユーザーをグループにするのがよいと思います。

chown www-data:ubuntu filename

www-dataはapacheのユーザー名で、ブラウザからアクセスするとこの権限になります。ubutntuはログインしているユーザー名とすると、これがグループメンバーになる設定です。

(2)さくら側でサブドメインを宣言する

さくらVPSのコントロールパネルから「DNS登録」を選びます。

ドメインコントロールパネル」に移動するので、「ネームサーバーに登録」からドメインを登録します(example.comなどを入力し、簡易設定を実行)。

その後、「ネームサーバーサービス」から先程作ったゾーンを指定して、サブドメインを登録します。

「レコードの追加」で「別名」をsite1, site2, site3のように指定します。

これでさくら側のネームサーバーに問い合わせがあったとき、「このサブドメインはこちらへ」という案内の設定ができたことになります。

(3)VPSサーバーで振り分けの設定をする

次にVPSサーバーで「このドメインならこのフォルダ(ファイル)を表示する」という指定をします。

sudo vim /etc/apache2/apache2.conf

apacheの設定ファイルを開き、以下をドメインの数だけ追記します。

NameVirtualHost サーバーのIPアドレス:80
<VirtualHost サーバーのIPアドレス:80>
    DocumentRoot /var/www/html/site1
    ServerName site1.example.com
</VirtualHost>

<VirtualHost サーバーのIPアドレス:80>
    DocumentRoot /var/www/html/site2
    ServerName site2.example.com
</VirtualHost>

<VirtualHost サーバーのIPアドレス:80>
    DocumentRoot /var/www/html/site3
    ServerName site3.example.com
</VirtualHost>

:wqで保存して再起動します。

sudo service apache2 restart

これで設定完了。

(4)ドメイン発行元のネームサーバーを書き換える

最後に、ドメイン発行元の設定をします。

このようにさくらのネームサーバーに向けます。

これで、example.comへ問い合わせがあれば、さくらのネームサーバー(NS1.DNS.NE.JP)に行き、さらにさくらのネームサーバーはそれをサブドメインに振り分け(site1, site2, site3)、VPSサーバーに到達します。VPSサーバーは、問い合わせのあったサブドメインそれぞれのフォルダを表示します(site1なら/var/www/html/site1)。

 

あとはこれをSSL化する、という作業が残っています…。