2017-04-12 6 views
1

私はASP.NETコアプロジェクトを作成し、私は自分のWebサイト用にSSLを購入しました。私は自分のhttpをhttpsにリダイレクトするためにweb.configにリダイレクトルールを作成しました。私が持っている問題は、私のウェブサイトのすべてのリンクが、SSLのために証明書の問題を引き起こしていることです.SSLがないためです。これは私がやったことです:IISはドメインに対してのみhttpをhttpsにリダイレクト

<rewrite> 
    <rules> 
    <rule name="Redirect to https"> 
     <match url="(.*)" /> 
     <conditions> 
     <add input="{HTTPS}" pattern="Off" /> 
     <add input="{REQUEST_METHOD}" pattern="^get$|^head$" /> 
     <add input="{HTTP_HOST}" negate="true" pattern="localhost" /> 
     </conditions> 
     <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" /> 
    </rule> 
    </rules> 
</rewrite> 

例えば、私のウェブサイトのドメインはwww.example.comです。私のプロジェクトでSSLを有効にした後、私のウェブサイトは今やhttps://www.example.comです。 www.partner1.comなどのパートナーのために私のウェブサイトにいくつかのリンクがあります。問題は、現在私のパートナーのリンクも自分のURLにhttpsを持っていますが、彼らのウェブサイトにSSL証明書がないことです。つまり、リンクをクリックすると、https URLにリダイレクトされ、証明書エラーページが表示されます。

ドメインをhttpsだけに設定し、パートナーにhrefリンクを使用させても、httpを使用できるようにするにはどうすればよいですか?

+0

こんにちは、これをチェックしてください:https://finalcodingtutorials.blogspot.ae/2017/03/non-www-with-http-to-https.html –

+0

@Usman既にこの1つをチェックしてください私の問題を解決していない、私のウェブサイトのすべてのリンクはまだhttps .. – Huby03

+0

あなたのウェブサイトのリンクを共有します。 –

答えて

0

私はあなたがこれと同じルールを使用することをお勧め:

<rewrite> 
    <rules> 
    <clear /> 
     <rule name="Redirect to https" stopProcessing="true"> <match url=".*" /> 
     <conditions> <add input="{HTTPS}" pattern="off" ignoreCase="true" /> </conditions> 
     <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" /> 
    </rule> 
</rewrite> 

を私は同じ使用していますし、あなたがあなたの答えで述べたperfect..as私はすでにそれが働いて、あなたのシナリオを確認しているため。

私は私のウェブサイトのページにリンクを作成し、hrefを別のウェブサイトであるhttp://ドメインに設定しました。その変化していないし、そのリンクをクリックして正常に動作します。ここにリンクコード:

<a target="_blank" href="http:// www.jwoodmaker.com/">Test</a> 

私はすでにあなたにこれの詳細を持っているリンクを送信します。 this link

関連する問題