2017-04-10 7 views
2

私のWebサイトをhttpからhttpsにリダイレクトするためにweb.configにリダイレクトルールを作成しました。私が持っている問題は、ウェブサイト上のすべてのリンクがhttpsになっていることです。私はSSLを持っていない他のウェブサイトへのリンクがたくさんあるので、私は証明書のエラーを取得します。これは私がやっていることです:ASP.NETコアがHTTPをhttpsにリダイレクト

<rewrite> 
    <rules> 
    <rule name="HTTP/S to HTTPS Redirect" enabled="true" stopProcessing="true"> 
     <match url="(.*)" /> 
     <conditions logicalGrouping="MatchAny"> 
     <add input="{SERVER_PORT_SECURE}" pattern="^0$" /> 
     </conditions> 
     <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite> 

がどのように私は私のウェブサイト上のすべてのリンクをだけ自分のドメインのHTTPSにリダイレクトし、できないのですか?あなたにも、ドメインのために別の条件を追加することができます

+0

https://finalcodingtutorials.blogspot.ae/2017/03/non-www-to-www-with-http-to-https .html –

+0

こちらをご覧ください:https://neelbhatt.com/2018/02/04/enforce-ssl-and-use-hsts-in-net-core2-0-net-core-security-part-i/ – Neel

答えて

1

<add input="{HTTP_HOST}" negate="true" pattern="localhost" /> 

は、あなたのドメイン名で「localhost」を交換してください。詳細については

<rewrite> 
    <rules> 
    <rule name="HTTP/S to HTTPS Redirect" enabled="true" stopProcessing="true"> 
     <match url="(.*)" /> 
     <conditions logicalGrouping="MatchAny"> 
     <add input="{SERVER_PORT_SECURE}" pattern="^0$" /> 
     <add input="{HTTP_HOST}" negate="true" pattern="yourdaomainname" /> 
     </conditions> 
     <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite> 

https://www.softfluent.com/blog/dev/2016/12/27/Page-redirection-and-URL-Rewriting-with-ASP-NET-Core

は、この情報がお役に立てば幸い!

+0

ありがとう!しかし、今私は私のウェブサイトに問題がある、私はHTTP 500のエラーがあります。私は、すべての書き換えルールを削除しようとしていた私のweb.configを設定しようとしたが、私はそのHTTP 500のエラーが発生している。私はそれをそのままにして作業を続けようとしました...その解決方法がわかりません – Huby03

+0

エラーの詳細を教えてください。 –

+0

私はこの問題の詳細を私が説明したところで別の投稿を作成しました:http://stackoverflow.com/questions/43322941/asp-net-core-http-500-error?noredirect=1#comment73711409_43322941 – Huby03

6

実際には(ASP.NET Core 1.1)何をしようとしているのかに関する規則を含む、書き換えという名前のmiddlewareがあります。

あなたはこのようStartup.csにそれを使用することができ

var options = new RewriteOptions() 
    .AddRedirectToHttpsPermanent(); 

app.UseRewriter(options); 
+0

ここにいくつかの追加リソースhttps://docs.microsoft.com/en-us/aspnet/core/security/enforcing-ssl –

関連する問題