角2には、経路上でハッシュフラグメント '#'を使用するために、html5ルートとHashLocationStrategyを扱うPathLocationStragyとがあります。urlの "HTML 5 pushState"スタイルとハッシュフラグメントで動作するようにIIS URL書き換えモジュールを構成する方法はありますか?
我々は、ユーザ認証とPathLocationStragy(AngularJS上のルートのかhtml5mode)のためOIDC(OpenIDの接続)を使用する場合のOpenIDは、一部のフローのリターンに「#」フラグメント後のデータは、後に戻ってリダイレクトするので、ここでの問題はありますHTML5のルートの http://mysite/callback#code=7b60c0570d7c4da0fc60678c0e46deadd5eeab0a659203fd44efb7cd51b2cdab&id_token=eyJhb ...
は非常に一般的です設定はIIS URL書き換えに怒鳴る:
... <system.webServer> <rewrite> <rules> <remove name="AngularJS Routes" /> <rule name="AngularJS Routes" stopProcessing="true"> <match url=".*" /> <conditions logicalGrouping="MatchAll"> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> <add input="{REQUEST_URI}" pattern="/(api)/" negate="true" /> </conditions> <action type="Rewrite" url="/" /> </rule> </rules> </rewrite> </system.webServer> ...
しかし、ウェブサーバは、この要求に対する応答をログインユーザーの後に認証サーバからhttp://mysite/callback#code=7b60c0570d7c4d
でURLを受信したときである:403 - Forbidden: Access is denied.
は、私はこの問題はないAngularJSや角度2 app'と、URLリライトの設定であることを考えます... どのようにそれを解決するには? AngularJS/Angular 2をhtml5ルートスタイルとOpenID Connectで使うには?
ページを更新するとどうなりますか? – Rachmaninoff
はい、それは起こります –
' ' IISの専門家ではありませんが、動作するかどうかを確認してください。 –
Rachmaninoff