Debian9でnginxにVirtualHostを設定した
だいぶ苦戦しました。
やったこと
1.さくらのVPSを利用しているアカウントでSAKURA internetの独自ドメイン取得サービスから独自ドメインを取得、ネームサーバーの登録を行った。
2.さくらのVPSにインストールしたDebian9 において、nginxにVirtualHostの設定を行った。
1.さくらのVPSを利用しているアカウントでSAKURA internetの独自ドメイン取得サービスから独自ドメインを取得、ネームサーバーを登録
さくらのVPSを利用しているので、独自ドメインを設定するなら同じプラットフォームで取得したほうがいいかなと思いSAKURA internetサービスから取得しました(
独自ドメイン取得・管理 - レンタルサーバーはさくらインターネット
)。
この後の設定がよくわからずひたすら迷いに迷いました。
最初、自分で調べた情報を見たところ取得したドメインと同名のネームサーバーを登録しなければならないのかと思い、さくらインターネットの会員メニューから契約情報のタブを開き、契約情報の確認→ドメインメニュー→ネームサーバ新規登録に進み、ドメイン名と同じものを入力してみると「登録することができませんでした。このゾーンは利用中です。(E007) 」と返されてしまい、途方に暮れました。
ヘルプセンターにこの件を問い合わせたところ、お客様の状況ではネームサーバの登録は必要ありませんと言われたため、ドメインメニューのドメインリストに表示されている取得した独自ドメインのゾーン編集を行いました。
簡単設定でIPアドレスにVPSサーバーのアドレスを入力、あとは画像のようになるように設定(といっても最初から設定されたような気がします)。
しばらくすると登録が完了し、ドメインの問題は解決しました。
2.さくらのVPSにインストールしたDebian9 において、nginxにVirtualHostの設定
VirtualHostの設定はプログラミングビギナーNekoteniがあなたに贈る!NginxでVirtual Hostの巻 - ねこテニを参考にしました。
これを見ながら設定を行ったのですが、nginxの起動は問題ない(VPSサーバーに接続するとnginxのhtmlが表示される)ものの、取得した独自ドメインのアドレスにアクセスしようとすると403エラーを返されてしまいました。
何回ファイル内の記述を確認しても問題を発見できなかったのですが、エラーログを確認したところ「"/home/username/public_html/domain/public/index.html" is forbidden (13: Permission denied)」とありました。
permissionに問題があることがわかったのでpublicディレクトリ以下のpermissionを変更。しかし、また同じエラーが出ました。
その後ルートのパス全てにreadのpermissionが必要とのアドバイスをもらったのでpermissionを変更。やっと独自ドメインのURLを表示させることに成功しました。