スポンサーリンク
Nginxのモジュール開発についてのメモ書きです。今後追加することが当分なさそうなので、現在の状態を公開します(公開できない部分は削除済み)。
目次
スポンサーリンク
謎のtフォルダと.tファイル(テスト方法付き)
公開されているモジュールには謎のtフォルダと拡張子.tのファイルがあるが、これはテスト用のファイルらしい。
最低限のモジュール構成とビルド
新しい単純なディレクティブを1つ定義しただけのモジュールとビルド方法。ソースコードはGitHubのリンクをたどる。
公式からリンクされている開発者向け資料
何が作れるのか、が把握しやすい。しかし、書かれたのが2007年。
Nginx Developers Kit
Nginx Development Kit - an Nginx module that adds additional generic tools that module developers can use in their own modules (引用元)
(割と)簡単なモジュール
公式のサードパーティー製モジュールのページ
モジュールの中にはリンク切れも。
このページの更新されていない具合に、Nginxモジュール開発の寂れ具合を感じる。
Nginxのビルド
http://nginx.org/en/docs/configure.html
「mkdir ~/src」「cd src」「git clone https://did2@github.com/did2/nginx.git」「cd nginx」「./configure --prefix=/home/did2/bin/nginx」
./configure: error: C compiler cc is not found
が出たので、「sudo apt-get install gcc」
./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=option.
が出たので、「sudo apt-get install libpcre3 libpcre3-dev」
「sudo useradd -s /sbin/nologin nginx」「sudo mkdir /var/{log,run}/nginx」「sudo chown nginx:nginx /var/{log,run}/nginx/」
http://www.zlib.net/
「cd /usr/local/src」「sudo wget "http://zlib.net/zlib-1.2.8.tar.gz"」「sudo tar zxvf zlib-1.2.8.tar.gz」
「sudo wget "http://www.openssl.org/source/openssl-1.0.1i.tar.gz"」「sudo tar zxvf openssl-1.0.1i.tar.gz」
「./configure --prefix=/home/did2/bin/nginx --user=nginx --group=nginx --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/run/nginx/nginx.log --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-openssl=/usr/local/src/openssl-1.0.1i --with-zlib=/usr/local/src/zlib-1.2.8 --with-http_ssl_module --with-http_realip_module」
「make」で「zsh: command not found: make」が出たので「sudo apt-get install make」。
「sudo make」「sudo make install」
設定ファイルは「~/bin/nginx/conf/nginx.conf」に。
Ubuntuでの起動スクリプトは「http://wiki.nginx.org/Nginx-init-ubuntu」に。「https://raw.githubusercontent.com/JasonGiedymin/nginx-init-ubuntu/master/nginx」からダウンロード可能。
「cd ~/src/nginx」「wget -O nginx-init-ubuntu https://raw.githubusercontent.com/JasonGiedymin/nginx-init-ubuntu/master/nginx」「chmod u+x nginx-init-ubuntu」「vim nginx-init-ubuntu」
「NGINXPATH=/home/did2/bin/nginx」「lockfile=/var/run/nginx/nginx.lock」
「sudo ./nginx-init-ubuntu start」
Proxyモジュールについて
本:http://www.it-ebooks.info/book/3326/
(以降削除)
スポンサーリンク
スポンサーリンク