これは私のシナリオです:
そう、
- 暗号化された HTTPS 経由のリクエストは、次のように Apache に送信されます。
https://server1/MyPerlApp
- ユーザーがログインしていない場合、ログイン ページ (server1 内) へのリダイレクトが行われ、Apache は要求を Server2 にプロキシしません。
- ユーザーがログインすると - IS 認証されます - Apache は
https://server1/MyPerlApp
、http://server2:5000
質問1: これは可能ですか? (私は Apache について十分に詳しく知りません。これは簡単なことではありません。
ProxyPass /MyPerlApp http://server2:5000/
ProxyPass
server1 でユーザーを認証し、認証された場合のみを設定する必要があるためです。Apacheは非常に柔軟なので、上記の答えはイエスだと思います(ただし、確認と詳細は大歓迎です)-主な具体的な質問は次のとおりです。
- Plack アプリケーションは、どのユーザーが Apache レベル (つまり、最初のサーバー) で認証されているかをどのように認識しますか?
- ユーザー情報の一部
perl
をサーバー上のアプリに配信する簡単な方法は何ですか? たとえば、各クエリにパラメーターをmod_rewrite
追加するApache の場合、user=username
- Apache は、
perl
アプリが読み取るべき HTTP ヘッダーを設定できますか? - 簡単で推奨される方法はありますか?
starman/perl アプリで認証ルーチンを回避する方法を探しています。
- とにかく、ユーザーは server1 にログインする必要があります (ワークフローの他のタスクのために)
- 彼がすでにログインしている場合、アプリでの認証は必要ありません (不必要な二重ログインを避ける)
- ただし、どのユーザーがログインしているかを知る必要があります(server1 の Apache 経由)
すでに同様の質問がありますが、次のとおりです。
- https://stackoverflow.com/q/12561830/734304 (回答なし)
- https://stackoverflow.com/q/11907797/734304 (回答なし)
- 基本認証を使用した Apache リバース プロキシ(同様ですが、バックエンドは同じサーバーと同じ apache にあります)