Установка Redmine + Nginx (Debian 6.0 "Squeeze") в картинках

Redmine - открытое серверное веб-приложение для управления проектами и задачами (в том числе для отслеживания ошибок). Redmine написан на Ruby и представляет собой приложение на основе широко известного веб-фреймворка Ruby on Rails. Распространяется согласно GNU General Public License. (информация из Википедии) Устанавливаем redmine

aptitude install redmine

Я выбрал sqlite, вы можете выбрать любой тип баз данных для хранения данных

Устанавливаем thin. Thin - быстрый и очень простой веб-сервер на Ruby

aptitude install thin

Настраиваем.

vi /etc/thin1.8/redmine.yml

pid: /var/run/thin.pid timeout: 30 log: /var/log/nginx/thin.log max_conns: 1024 require: [] environment: production max_persistent_conns: 512 no-epoll: true servers: 1 daemonize: true socket: /tmp/redmine.sock chdir: /usr/share/redmine/ user: www-data group: www-data

и стартуем

/etc/init.d/thin start

Осталось настроить Nginx

vi /etc/nginx/sites-available/redmine.conf

upstream thin_server { server unix:/tmp/redmine.0.sock; } server { listen 80; server_name redmine.Ваш_домен; access_log /var/log/nginx/redmine-proxy-access; error_log /var/log/nginx/redmine-proxy-error; include proxy_params; root /usr/share/redmine/public; proxy_redirect off; rewrite ^/login(.*) https://redmine.Ваш_домен$request_uri permanent; rewrite ^/my/account(.*) https://redmine.Ваш_домен$request_uri permanent; rewrite ^/my/password(.*) https://redmine.Ваш_домен$request_uri permanent; rewrite ^/admin(.*) https://redmine.Ваш_домен$request_uri permanent; location / { try_files $uri/index.html $uri.html $uri @thin; } location @thin { proxy_pass http://thin_server; } } server { listen 443; server_name redmine.Ваш_домен; access_log /var/log/nginx/redmine-ssl-proxy-access; error_log /var/log/nginx/redmine-ssl-proxy-error; ssl on; ssl_certificate /etc/ssl/localcerts/redmine.pem; ssl_certificate_key /etc/ssl/localcerts/redmine.key; include proxy_params; proxy_redirect off; root /usr/share/redmine/public; rewrite ^/$ http://redmine.Ваш_домен$request_uri permanent; if ($uri !~* "^/projects/.*(copy|destroy|archive)") { rewrite ^/projects(.*) http://redmine.Ваш_домен$request_uri permanent; } rewrite ^/guide(.*) http://redmine.Ваш_домен$request_uri permanent; rewrite ^/users(.*) http://redmine.Ваш_домен$request_uri permanent; rewrite ^/my/page(.*) http://redmine.Ваш_домен$request_uri permanent; rewrite ^/logout(.*) http://redmine.Ваш_домен$request_uri permanent; location / { try_files $uri/index.html $uri.html $uri @thin; } location @thin { proxy_pass http://thin_server; } }

Создаем сертификаты

mkdir -p /etc/ssl/localcerts openssl req -new -x509 -days 365 -nodes -out /etc/ssl/localcerts/redmine.pem -keyout /etc/ssl/localcerts/redmine.key chmod 600 /etc/ssl/localcerts/redmine*

"Включаем" наш конфигурационный файл и проверяем конфигурацию

ln -s /etc/nginx/sites-available/redmine.conf /etc/nginx/sites-enabled/redmine.conf /etc/init.d/nginx configtest

Если все впорядке рестартуем Nginx

/etc/init.d/nginx restart

На этом все. Почти вся информация взята с официальной документации.