tkuchikiの日記

新ブログ https://blog.tkuchiki.net

Nginx

Amazon Linux で certbot(letsencrypt) を使って SSL 証明書を取得する

※2016年5月16日現在の情報です。 バージョンが変わると動作しなくなる可能性があります。 letsencrypt のクライアントが certbot に改名したようです (See: https://github.com/certbot/certbot)。 Amazon Linux 上で certbot-auto(letsencrypt-auto) を使っ…

Nginx で query string を見て動的にファイルを配信する

server { listen 80; server_name localhost; rewrite_log on; error_log /var/log/nginx/rewrite.log notice; location ~ ^/weather+\.json { rewrite ^ /weather/$arg_date.json; } location ~ ^/weather/.*\.json { default_type application/json; root …

application で認証した後に nginx で static file を配信する

application で認証している場合のみファイルをダウンロードさせたい場合があると思いますが、 そんなときの設定例です。 以下に簡単に試す方法を記載しています。tkuchiki/nginx-direct-data-transfer-sample · GitHub例では Basic 認証ですが、実際はちゃ…

nginx の location に deny all; と return 200; を書くと return が優先される

server { listen 80 default_server; server_name _; error_page 403 = @403_page; location / { deny all; return 200 "OK"; } location @403_page { return 403 "Forbidden"; } } と書いた時、403 Forbidden が返ってくるかと思っていましたが、 200 OK が…

nginx の HttpGeoModule を使って、特定 ip からのアクセス以外は 503 を返すのを簡潔に書く

特定の ip からのアクセス以外は 503 を返す例です。 nginxで特定ホスト以外からのアクセスをメンテナンス画面にする方法 (2) - (ひ)メモ を参考にさせていただきました。 ありがとうございます。以下が設定です。 geo $geo { default 1; 127.0.0.1 0; } ser…

Nginx で 404 をキャッシュさせない

nginx で 404をキャッシュさせないようにする場合、 add_header Cache-Control "no-cache, no-store"; return 404 "not found"; と設定しても、Cache-Control ヘッダが付与されません。Module ngx_http_headers_module を見ると、 Adds the specified field …

Kohana 用 nginx conf

Kohana を Nginx で動かす機会があったのでメモ。

zabbix-server 2.0 インストールメモ(手動編)

Vagrant で作成したVM上にchefを使わないで環境を構築した際のメモ。 メモ作成時の RPM 最新版は 2.0.6 。 yumレポジトリ追加と yum install $ rpm -ivh http://repo.zabbix.com/zabbix/2.0/rhel/6/x86_64/zabbix-release-2.0-1.el6.noarch.rpm $ yum instal…

nginx で sslを設定 & オレオレ証明書の作成

ローカル環境で ssl の動作環境を構築する際のメモ。 オレオレ証明書の作成 openssl genrsa -out SERVER_NAME.key 2048 openssl req -new -key SERVER_NAME.key -out SERVER_NAME.csr openssl rsa -in SERVER_NAME.key -out SERVER_NAME.key openssl x509 -r…

Apache と Nginx でBasic認証をかける&特定IPのみ許可の設定

設定する度にググっているのでメモ。 Apache # Basic auth AuthUserFile /var/www/html/example.com/.htpasswd AuthGroupFile /dev/null AuthName "basic authentication" AuthType Basic require valid-user Satisfy any Order deny,allow Deny from all Al…

ApacheとNginxでバージョン情報を非表示にする方法

バージョン情報を表示するのはセキュリティ上あまり良くないので、非表示にしたい。 という時の設定。 Apache 以下をhttpd.conf に書けば全体に反映される。 ServerTokens Prod 以下を設定すると、Apache Server ... も消すことができる。 ServerSignature O…

Nginx で主要な static file を返す設定

拡張子で判断。 大抵の場合はこれでいいはず。 location ~ \.(js|css|png|jpe?g|gif|swf|txt|ico) { root /path/to/dir; }

nginx で .svnを含むURLのリクエストをdenyする方法

location ~ \.svn { deny all; } location を正規表現で評価する場合は記述順になるので、出来る限り上の方に書かないと、マッチしない場合があるので注意。

Nginx での location 優先順位まとめ

調べたのでメモ。location の優先順位は、1. = 修飾子をつけた完全一致 2. 修飾子なしの完全一致 3. ^~ 修飾子つきの前方一致 4. ~ or ~* 修飾子つきの、正規表現一致 5. 修飾子なしの前方一致 となるそうです。 ただし、 正規表現以外のパターンでは、パス…