この URL は一体どうやって機能しているのでしょうか?

この URL は一体どうやって機能しているのでしょうか?

継承したシステムをリバースエンジニアリングして変更を加えようとしています。

録音を聞くための URL を生成するプログラムがあります。次のようになります。

http://recordings.myserver.com/archive/http://127.0.0.1/completed/MP3/2019-12-23/recording_file_name.mp3

URL は機能し、録音を聞くことができますが、どのように機能するのか理解できません。URL の中に URL があるように見えます。私が知る限り、「アーカイブ」は、recordings.myserver.com のリンクやエイリアスではありません。「http://127.0.0.1サーバー上の「」ディレクトリ。

このリンクも機能します:

http://recordings.myserver.com/completed/MP3/2019-12-23/recording_file_name.mp3

また、既存のプログラムがテーブルに書き込む内容とは異なるというだけで、より意味をなします。

.htaccess には次の記述があります:

RewriteEngine On
RewriteCond %{HTTPS}  !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]

ただし、URLはHTTPであり、書き換え後もそのままであることに注意してください。録音を聞くためにクリックされたリンクを含むページには、

アーカイブリンクやフォルダがない場合、最初のリンクはどのように機能するのでしょうか?http://127.0.0.1最初の URL 内で動作しますか?

答え1

これを実現するにはさまざまな方法があります。 1 つは、ご想像のとおり HTTP Rewrite を使用する方法です。これは、/archive/*たとえば次のように書き換えて、/archive/redirect.phpURL の残りの部分を読み取り、リバース プロキシ要求を作成します。

別の方法としては、アプリケーションの 404 処理を操作することです。404 が発生した場合、Web サーバーはそれをクライアントに送信する前に傍受し、リバース プロキシ要求を実行して結果をクライアントに転送します。

いずれにせよ、これは企業ネットワークの外部から内部のリソースにアクセスするための優れたエクスプロイトのようです。このhttp://127.0.0.1/URL を文字通り何か他のものに置き換えれば、その URL の内容が返されるはずです。

関連情報