プロジェクト

全般

プロフィール

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;
}

運用管理

アクセス状況の把握

直近のアクセスログから頻度の多いIPアドレスを調べる

~$ sudo awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head -20
1359 192.168.198.135
1114 192.168.198.136
  :

直近のアクセスログから頻度の多いIPアドレスのUser-Agentを調べる

~$ sudo grep '^192.168.198.135' /var/log/nginx/access.log | awk -F'"' '{print $6}' |sort | uniq -c | sort -nr

アクセス頻度の高いURLを調べる

~$ sudo awk -F'"' '{print $2}' /var/log/nginx/access.log | awk '{print $2}' | sort | uniq -c | sort -nr |head -20
   1593 /assets/icons-64cb2f36.svg
    564 /
     63 /assets/plugin_assets/redmica_ui_extension/mermaid_macro/mermaid.min-39d56676.js
      :
 


約1ヶ月前に更新