sinatraをvhost上でpassengerを使ってサブディレクトリとして起動する場合
ディレクトリ構造
①passenger.conf
・ ・ PassengerEnabled off <VirtualHost ${ipアドレス}:80> DocumentRoot ${vhostのドキュメントルート} ServerName ${vhost名} <Directory "${vhostのドキュメントルート}/${vhost名}/"> PassengerAppRoot ${sinatraのアプリのルート} RackEnv production RackBaseURI /${sinatraアプリのpublicディレクトリのシムリンク名} PassengerEnabled on </Directory> </VirtualHost>
- 1行目の「PassengerEnabled off」で基本的にはPassengerを反映しないようにする
- これが無いと全PageにPassengerが反映されてしまう
- 下でディレクトリを限定してPassengerを反映させる
②sinatraファイル
configure do set :public, File.dirname(__FILE__) + '/public' end