1

3 つのサーバー ( AB、およびC )があるとします。

  • サーバーAはサーバーBにのみアクセスでき、AはCに直接アクセスできません。
  • BはCにアクセスできます。
  • ACは別のネットワークにあります。

BCはどちらも http サーバーですが、PHP を実行できるのはCだけです。

AからCのMySQL サーバーから情報を取得するには、PHP を使用する必要があります。

PHP をBにインストールできません。

Cで実行され、結果をBに返し、Aに返すPHP ページを作成することは可能ですか?

4

3 に答える 3

1

プロキシとして機能するようにBを構成します。Apacheを実行している場合は、proxypassディレクティブを参照してください

于 2011-08-24T10:07:42.910 に答える
1

Bをプロキシとして機能させる必要があります。Bに受信したリクエストをCに直接ルーティングするという考え方です。

概要...そして、CからAにある情報を取得したいとします。

(HTTP,PHP) A -----> B (HTTP,PHP)
(HTTP,PHP) A --||   C (HTTP,MySQL)
(HTTP,PHP) B -----> C (HTTP, MySQL)

(HTTP,PHP)            A -----> B (HTTP->ProxyPass,PHP)
(HTTP,PHP)            A --||   C (HTTP,MySQL)
(HTTP->ProxyPass,PHP) B -----> C (HTTP, MySQL)

A->B(Proxied to)->C

http://httpd.apache.org/docs/2.1/mod/mod_proxy.html#proxypass

ドキュメント

ローカルサーバーのアドレスがhttp://example.com/であるとします。それから

ProxyPass /mirror/foo/ http://backend.example.com/

http://example.com/mirror/foo/barのローカルリクエストは、内部でhttp://backend.example.com/barへのプロキシリクエストに変換されます。

于 2011-08-24T10:18:31.613 に答える
0

「AからCのmysqlサーバーから」の意味がわかりませんでした。AはHTTPサーバーではないため、MySQLデータをAからCに転送することを意味していると思います(BとCのみが言及されました)。B の 3310 などのランダムなポートを A のポート 3306 にルーティングできます。このようにして、A の MySQL サーバーに C から直接アクセスできます (ただし、A でリモート アクセスを有効にする必要があります)。3 つのサーバーで管理者権限を持っていると仮定します。

于 2011-08-24T10:13:00.663 に答える