RailsとWordPressの共存

Ruby on Rails中心にプログラムを作っていますが、ブログやECサイトを独自で作ろうとすると結構大変です。

自分でブログを作ろうとしたことがありますが、トラックバックやコメントをユーザー管理したりすると、もう大変。
せいぜいRSSを書き出すことや、CKEditorでエディタをつくることで限界です。

ECサイトもSpree Commerceというのを使えばRailsで容易に組めそうですが、、、決済の部分が大変。
Paypalがやっとで日本の決済サービスと接続するには、独自でプログラムを作るしかありません。
プログラムを作るのはなんとかできても、セキュリティの絡むところなので別の意味で大変。

それでRailsとせめてWordPressを統合できないかなと、mod_rewriteをいじっていました。
半日かけてもうまくいかなかったのですが、答えが見つかりました。

[code]
<virtualhost …>
ServerName …
DocumentRoot …
<location /blog>
PassengerEnabled off # turn off Passenger for /blog subdirectory


RewriteEngine On
RewriteRule ^/blog/?(.*)$ /path/to/wordpress/$1 [NC,QSA,L]

[/code]

PassengerEnabled を使わずに、RewriteRuleだけを使って使っていると、サブディレクトリにあるPHPを実行しないのでうまくいかなかった。これで、PHPプログラムとRailsプログラムは共存でき、複数のRailsプログラムも共存できる。
さらに、httpsも全部まとめることができる。
RailsはPasssengerで動かしています。

http://www.spotscore.com/blog/2009/11/22/how-to-host-wordpress-and-phusion-passenger-rails-app-on-the-same-domain/

 Share!