同一サーバ内で、シンボリックリンクを貼るように、

外部のサーバを、自サーバの一部として扱うにはどうしたら
よいのでしょうか。そもそもどうやってググればよいかすら
わかりませんでしたので、こちらで質問させて下さい。

イメージとしては;
# ln -s http://56.13.nn.nn/ /var/www/html/destination
みたいなことをしたいといイメージです。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2013/03/16 18:35:28
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.2

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

そもそもどうやってググればよいかすら
わかりませんでしたので、

いろいろなキーワードがありますけど、例えば「リモート マウント」とか。

一番歴史があるのは、回答の一番目で出てる NFS
同じくらい有名なのが samba
外部のサーバで接続ポートが限られているなら、通信を ssh で行う SSHFS
という辺りが選択肢になるのかな、と思います。


NFS は、多少性能的に難はあるものの、unix のアクセス権がそのまま使えるので、シンボリックリンクとほぼ同じことができます(接続先のアクセスが、自サーバと同じなら)。

samba は、Windows のファイル共有のプロトコル SMB を unix で実装したものです。Windows と unix はファイルのアクセス権限の考え方に微妙に違いがあるので、細かい制御をしようとしたときに壁にぶち当たることも。
SMB の実装なので、ファイルだけではなくプリンタも共有できたりします。

商用サーバだと、NFS や samba で使うポートが閉じられていることが多いかと思います。
そういう場合には SSHFS の出番です。
ssh でリモートログインできる環境になっていればマウントすることができます。
多分、デフォルトでは入っていないはずなので、インストールする必要があります。


回答の最初に書いたググる場合のキーワード。
NFS がずらっと並ぶだろうと想像していたのですが、この回答を書いている時点で最初に来てるのが SSHFS 。
telnet や ftp ポートまで閉じられているようなサーバだと、こういう方法になります。


限られた接続で思い出したのが、WebDAV
接続には http を使います。
WebDAV を使ったファイルシステムもあります。
http://savannah.nongnu.org/projects/davfs2

こちらもインストールの必要があります(多分)。
例えば、こんな感じ。
http://d.hatena.ne.jp/kiyoshi_net/20120807/1344342026

自分では使ったことは無いのですが、性能的に難はありそうです。



と、このように、いろいろ方法はあります。




コメントを読んでの追記です。

http://sample.com/blog/ でアクセスされた場合に、
http://51.11.nn.nn/ で参照できる wordpress を表示させたいと思ったのです。

サーバ上のファイルの操作は、それぞれのサーバでやるので良ければ、Apache(ですよね?)の mod_proxy を使ってリバースプロキシを設定する方が適切だと思います。
ぼくが下手な説明を書くよりも、↓を読んでもらえれば分かると思います。
http://webos-goodies.jp/archives/51261261.html

一応、公式のリファレンスも貼っておきます(分かりにくいけど)。
http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html

id:gets_itai

ありがとうございます。わかってきました。

今回、AWSのEC2は、Amimoto ( http://ja.megumi-cloud.com )というイメージを使ったので、nginx なのですが。「リバースプロキシを設定」すれば大丈夫なのですね。ありがとうございます。

2013/03/16 18:33:18

その他の回答1件)

id:oil999 No.1

回答回数1728ベストアンサー獲得回数320

ポイント50pt

「外部のサーバ」の仕様によりけりです。

NFSv4が利用できればインターネット越しに分散ファイルシステムを構築できます。
http://www.turbolinux.co.jp/products/server/11s/user_guide/nfssetup.html

id:gets_itai

質問文を編集しました。詳細はこちら

id:a-kuma3 No.2

回答回数4973ベストアンサー獲得回数2154ここでベストアンサー

ポイント100pt

そもそもどうやってググればよいかすら
わかりませんでしたので、

いろいろなキーワードがありますけど、例えば「リモート マウント」とか。

一番歴史があるのは、回答の一番目で出てる NFS
同じくらい有名なのが samba
外部のサーバで接続ポートが限られているなら、通信を ssh で行う SSHFS
という辺りが選択肢になるのかな、と思います。


NFS は、多少性能的に難はあるものの、unix のアクセス権がそのまま使えるので、シンボリックリンクとほぼ同じことができます(接続先のアクセスが、自サーバと同じなら)。

samba は、Windows のファイル共有のプロトコル SMB を unix で実装したものです。Windows と unix はファイルのアクセス権限の考え方に微妙に違いがあるので、細かい制御をしようとしたときに壁にぶち当たることも。
SMB の実装なので、ファイルだけではなくプリンタも共有できたりします。

商用サーバだと、NFS や samba で使うポートが閉じられていることが多いかと思います。
そういう場合には SSHFS の出番です。
ssh でリモートログインできる環境になっていればマウントすることができます。
多分、デフォルトでは入っていないはずなので、インストールする必要があります。


回答の最初に書いたググる場合のキーワード。
NFS がずらっと並ぶだろうと想像していたのですが、この回答を書いている時点で最初に来てるのが SSHFS 。
telnet や ftp ポートまで閉じられているようなサーバだと、こういう方法になります。


限られた接続で思い出したのが、WebDAV
接続には http を使います。
WebDAV を使ったファイルシステムもあります。
http://savannah.nongnu.org/projects/davfs2

こちらもインストールの必要があります(多分)。
例えば、こんな感じ。
http://d.hatena.ne.jp/kiyoshi_net/20120807/1344342026

自分では使ったことは無いのですが、性能的に難はありそうです。



と、このように、いろいろ方法はあります。




コメントを読んでの追記です。

http://sample.com/blog/ でアクセスされた場合に、
http://51.11.nn.nn/ で参照できる wordpress を表示させたいと思ったのです。

サーバ上のファイルの操作は、それぞれのサーバでやるので良ければ、Apache(ですよね?)の mod_proxy を使ってリバースプロキシを設定する方が適切だと思います。
ぼくが下手な説明を書くよりも、↓を読んでもらえれば分かると思います。
http://webos-goodies.jp/archives/51261261.html

一応、公式のリファレンスも貼っておきます(分かりにくいけど)。
http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html

id:gets_itai

ありがとうございます。わかってきました。

今回、AWSのEC2は、Amimoto ( http://ja.megumi-cloud.com )というイメージを使ったので、nginx なのですが。「リバースプロキシを設定」すれば大丈夫なのですね。ありがとうございます。

2013/03/16 18:33:18
  • id:gets_itai
    oil999 様、a-kuma3 様、

    回答ありがとうございます。イメージがわいてきました。ありがとうございます。


    実際にやりたいと思ったのは下記のようなことなのですが、これを実現するにも、
    教えて頂いた NFS や SSHFS で実現するのがよいのでしょうか。
    直感的に、SSHFS は簡単そうだ。と思ったので、特にもっとよい方法がなければ、
    SSHFS でやろうと思います。



    http://sample.com/blog/ でアクセスされた場合に、
    http://51.11.nn.nn/ で参照できる wordpress を表示させたいと思ったのです。

    なお、 sample.com は さくらのVPS で、51.11.nn.nn は、AWS EC2 です。なので、どちらも root での作業が可能です。おとなしくwordpress.sample.com のようなサブドメインで 51.11.nn.nn を設定するのは、嫌なのです。
  • id:a-kuma3
    >>
    http://sample.com/blog/ でアクセスされた場合に、
    http://51.11.nn.nn/ で参照できる wordpress を表示させたいと思ったのです。
    <<
    回答に追記しました。
  • id:gets_itai
    a-kuma3様

    ありがとうございました。よく考えたら、転送先はnginxですが、本体はApacheなので、頂いた情報で設定できそうです。助かりました。
  • id:gets_itai
    わ。できました!!本当にありがとうございます。

    でもなんか、本体側で;
    $ ls -la /var/www/html
    とかやっても、先の例でいう「blog」というディレクトリは無いのですね。
    まちがって同名ディレクトリ作らないように気をつけないとだめなんですね。。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません