Nginx¶
ケーススタディ¶
ポート80へのリクエストをRedmineとGitに振り分ける¶
Nginxのポート80へのHTTPリクエストのうち、/git/で始まるリソースは、apacheのポート8008へ転送し GitSmartHttpを実行し、それ以外のリソースはUnicornのUNIXドメインソケットへ転送しRedmineを実行します。
設定¶
upstream unicorn-redmine {
server unix:/var/lib/redmine/tmp/sockets/unicorn.sock;
}
server {
listen 80;
server_name sw.example.com;
root /var/lib/redmine/public;
client_max_body_size 1G;
location /git/ {
proxy_pass http://localhost:8008;
}
location / {
try_files $uri/index.html $uri.html $uri @app;
}
location @app {
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_connect_timeout 60;
proxy_read_timeout 60;
proxy_send_timeout 60;
proxy_pass http://unicorn-redmine;
}
error_page 500 502 503 504 /500.html;
}