• Санкт-Петербург +7 (812) 309 26 84

Справка

Настройка Apache2 и Ruby on Rails

В системе установлены Apache2 и Ruby on Rails. Требуется настроить Apache таким образом, чтобы одни запросы он обрабатывал самостоятельно, а другие направлял на обработку в rails-приложение.

Привязку пути из URL запроса, пришедшего в Apache, настраиваем конфигурацией файла /etc/apache2/conf.d/rails.conf:

Alias /rails  /var/www/rails/public
 
<Directory /var/www/rails/public>
  RewriteEngine On
  RewriteBase /rails
   
  RewriteRule ^$ index.html [QSA]
  RewriteRule ^([^.]+)$ $1.html [QSA]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
   
  ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly"
</Directory>

Каталог приложения: /var/www/rails. С помощью директивы Alias привязываем путь /rails к каталогу приложения. Далее, с помощью директив RewriteRule и RewriteCond указываем, что при отсутствии запрашиваемого файла в каталоге public приложения, запрос должен передаваться rails-приложению, запускаемому в режиме FastCGI с помощью скрипта dispatch.fcgi.

Рецепты и советы, Apache, Ruby on Rails, Debian