LoginSignup
4
4

More than 5 years have passed since last update.

Padrinoで環境毎にコンテキストパスを切り替える方法

Posted at

目的

Padrinoでアプリを作成する場合に、 development環境では「localhost/」で動かしたいけど、production環境では「mydomain.com/projectname/」で動かしたい場合の対応方法

app.rbを修正

app/app.rbに以下を追加します。

app.rb
    // production環境ではコンテキストパスを「projectname」にする
    configure :production do
        ENV['RACK_BASE_URI'] = '/projectname'
    end

この記述をしておくと、 bundle exec padrino s -e production した場合に
url_for等を使用した場合に、pathの先頭に「/projectname」を付与してくれます。

jsで使用する場合

APIをjsから使用している場合はHTMLに以下みたいなのを埋め込んでおいて、jsでURLを組み立てる際に使用すればいいと思います。

html
<input type="hidden" id="contextpath" value="<%= ENV['RACK_BASE_URI']  %>" />
4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4