質問: RoRで作成したWebサービスと同じドメインのサブディレクトリにWordPressをおきたいです。 例: https://hogehoge.com/ (Ruby on Rails) https://hogehoge.com/blog/ (Wordpress) railsはAWSで動かしていますが、WordPressはレンタルサーバーで動かしたいです(そのほうがいろいろとラクなため)。 しかし、そうなるとドメインに設定するネームサーバーをどうすればよいかわかりません。 (いまはAWSのネームサーバーで動いているが、レンサバのネームサーバーは・・・・・) AWS上でWordPressも共存させるノウハウはでてきますが、上記のような方法はできないのでしょうか・・・?
回答: できないですね。 DNSの仕様上、同じホスト名(FQDN)に対して、対応するサーバは、1台です。 同じ内容のサーバを複数台用意して、同じホスト名で、負荷分散させることは可能ですが、 同じホスト名(FQDN)で、別々のサービスを別々のサーバで運用することは、できません。 (正確に言えば、DNSの設定はできますが、クライアント側から接続先は選べないので、WordPress へのアクセスが、AWS へ行ったり、Rails のアクセスが、レンタルサーバに行ったりします。接続先のサーバで、サービスが動いていない場合、404エラーになります。また、404が発生するのでSEO的には、マイナス要因です。) 対応方法として思いつくのは... wordpress 用にサブドメインを作って、 http://wordpress.example.com/blog/ で設置・運用する。AWS で、 /blog に対して、PROXY の設定をして、/blog にアクセスがあった場合、http://wordpress.example.com/blog/ のコンテンツを表示させるように設定する。 ぐらいでしょうか。 テーマ内や投稿記事のリンクは、ドメイン名を含まない形で、/blog/〜 というリンクで、記載しておく必要があります。 WordPress のサイト URL は、Proxy 経由のアクセスが成功するまでは、 http://wordpress.example.com/blog/ にしておいて、成功してから http://example.com/blog/ に変更します。(サイトURL を変更しないと WordPress の内部リンクが、 http://wordpress.example.com/blog/ のままになります。)