2015-03-03 2 views
3

Мы создали производственный сервер для нашего рельсового приложения с Nginx и puma. Мы хотим развернуть наше приложение для рельсов на суб-uri и в основном домене, мы хотим поставить wordpress для домашней страницы, страницы ценообразования и т. Д.Разверните приложение рельсов на вспомогательном uri домена

Как мы настраиваем наши рельсы, которые он может запускать на суб-ури, у которых есть мотив Devise в качестве аутентификации , Нужно ли нам менять наши маршруты для sub uri?

Какова будет конфигурация для nginx и puma?

Заранее благодарен!

ответ

2

Сначала вставьте нужный вам суб Uri путь в application.rb т.е. основной

... 
config.relative_url_root = "/main" 
... 

В config.ru, добавьте эти строки.

require ::File.expand_path('../config/environment', __FILE__) 
map SampleApplication::Application.config.relative_url_root || "/" do 
    run Rails.application 
end 

production.rb, добавить строку ниже.

# Enable serving of images, stylesheets, and JavaScripts from an asset server 
config.action_controller.asset_host = "YOUR_DOMAIN_NAME/main" 

# ActionMailer Config 
config.action_mailer.default_url_options = { 
    :host => "YOUR_DOMAIN_NAME", 
    :only_path => false, 
    :script_name => "/main" 
} 

В Nginx конфигурационного файла, добавьте эти строки

location /main { 
    alias /var/deploy/sample_application/current/public; 
    try_files $uri @main; 
} 

location @main { 
    proxy_http_version 1.1; 
    chunked_transfer_encoding off; 
    proxy_buffering off; 
    proxy_cache off; 

    proxy_redirect  off; 
    proxy_set_header Host    $http_host; 
    proxy_set_header X-Real-IP  $remote_addr; 
    proxy_set_header X-Forwarded-Proto $scheme; 

    proxy_pass http://puma_sample_application; 
} 
+0

only_path: ложь и script_name: '' my_sub_uri ключи к рельсам ActionMailer генерации правильной URL-адресов из помощников. – NoelProf

2

Нет, вы не должны настраивать приложение rails вообще. На самом деле вы можете просто изменить конфигурацию nginx.

Он должен прокси-сервер корневых запросов домена к вашему приложению wordpress и запросы поддоменов в ваше приложение rails.

Заканчивать этот вопрос, чтобы получить конфиг Nginx How configure nginx for rails app as subdomain?