VPS作業記録7

今日(1/24)はnginxの設定をやります。

英語のチュートリアルを読んで挫折して以来の再挑戦です。

基本的な設定ファイルの書き方を知って、
最低限、静的なファイルを返せるサーバーにすることです。

先日発売されたばかりの「nginx実践入門」を片手に作業します。
amzn.to


公開するデータの置き場所は

/data/html

ディレクトリにすることにしました。
特に、振り分けたりもしないので、デフォルトのconfに書き加えたいきます。

...
省略
...
http {
...
省略
...
    server {
        listen 80 default_server;
        root /data/html;
    }
}

だけ。

設定を反映させたいので、

# service reload nginx

のコマンドでリロートする(そもそも、起動してなければ起動)。

あとは、/data/htmlの下に、適当なhtmlファイルをおけば、「http://"自分のGlobal IPアドレス"/ファイル名」でアクセスすることができる。


まったく意味不明だったconfファイルの書き方が、nginx実践入門を読んでわかりました。


これだけだと味気ないので、ちょっといじる(要参照:nginx実践入門の4.1 静的コンテンツの配信)

indexディレクティブ

ほげ/っていうページにアクセスしたときに、自動的にほげ/index.htmlを返す設定。index.htmlという名前以外のものも設定できる。デフォルトでindex.htmlを返してくれるので、とくにいじらない。

autoindexディレクティブ

そのディレクトリの一覧がずらっと表示されるあの(どの?)ページのこと。ネットに公開するような場合は、offにしておくことが多いらしい(確かに、不用意に公開するものでもないですよね・・・)。ですが、autoindexディレクティブでonにすれば、簡単に設定可能。

error_pageディレクティブ

エラーページを返す設定のところ。たとえば、ファイルが存在しないURIにアクセスされたときに返すページ(404 NOT FOUND)のページを、自分で作ったやつに差し替えることができる。

...
省略
...
http {
...
省略
...
    server {
        listen 80 default_server;
        root /data/html;

        error_page 404 /404.html
    }
}

として、さっきと同じようにconfをリロードさせて、/data/htmlに404.htmlを作る。
これで、自分の404ページを作ることができた。

今後の課題的なこと。

1. Basic認証も設定してみたい。
2. Djangoの前準備
VPSCentOS→nignxときたら、次は、よーーーーやく、Djangoだと思ったら、
WSGI 環境にデプロイする方法 — Django 1.4 documentationをみると、Apacheならmod_wgsiですが、
あとは、uWSGIとgunicornみたいです。
ネットで情報探してみると、「nginx uWSGI」やら「nginx gunicorn」やらがでてきたので、もうひとステップぐらいありそうです。
コンテナサーバーとはなんぞや、とかそこらへんから。
uWSGIとかgunicornってなんやろは、ここ(便利で超強力なWSGIサーバー uWSGI を使ってみよう - 檜山正幸のキマイラ飼育記)とかを読む。
それか、nginx(FastCGI)+(flup+)Djangoみたいな感じ?
参考:Django FastCGI | NGINX
参考:サーバー — Django Best Practices
参考:FastCGI, SCGI, AJP で Django を使う — Django 1.4 documentation