1

私は 2 つのサーバーを持っています。それらをサーバー 1 とサーバー 2 と呼びましょう。サーバー 2 には、投稿を表示する Web アプリケーションがあります。このアプリケーションはhttp://www.2.com/showPostsで入手でき、誰でもこのページにアクセスできます。このアプリケーションは、リモートで投稿を追加することもできます。そのためには、ページhttp://www.2.com/addPostにアクセスしてフォームに入力する必要があります。

私がやりたいのは、この 2 番目のページ (/addPost) へのアクセスを 1 台のマシン (サーバー 1) のみに制限して、私だけがこのページにアクセスしてこのフォームに記入できるようにし、他の全員が 404 を受け取るようにすることです。方法それを達成するには?

編集:回答ありがとうございます。それらに基づいてさらに読みましたが、質問をもう少し正確にすることができます。私が正確に行う必要があるのは、サーバーによってクライアントを認証することです。これは、クライアントによってサーバーを認証する一方向の ssl 認証の反対です。どんな種類の IP ベースの認証も弱すぎるので、何らかの証明書が必要だと思います。

4

6 に答える 6

1

.htaccessルート ディレクトリにあるファイルを使用できます。

<Directory AddPost>Allow from www.1.com</Directory>

これによりwww.1.com、ページへのアクセスのみが許可されます。AddPostがファイルの場合は、 を使用します<Files AddPost></Files>

お役に立てれば!

于 2013-01-16T15:05:24.783 に答える
0

Apache Webサーバーを使用しているとしたら、仮想ホストを構成し、アクセスルールを設定して、すべてを拒否し、server1から許可することができます。ここにドキュメントがあります。

于 2013-01-16T14:52:20.583 に答える
0

ServletRequest#getRemoteAddr()リクエストを送信したクライアントの IP を返します。クライアントの IP を照合することで、このようなリクエストをフィルタリングできます。他のクライアントの場合、たとえば事前定義された404 errorページにリダイレクトできます。

于 2013-01-16T14:51:04.247 に答える
0

Tomcat サーバーの場合は、web.xml でフィルターを定義して、許可されたソースからの要求のみをフィルター処理できます。

于 2013-01-16T15:06:33.457 に答える
0

1 台のマシンのブラウザにのみ存在する証明書でhttp://www.2.com/addPostを保護します。

于 2013-01-16T14:46:59.470 に答える
0

addPost アドレスを localhost のみに制限し、更新目的で ssh トンネルを確立することもできます。

于 2013-01-16T14:51:48.837 に答える