প্রশ্ন আইআইএস 7 এ HTTP স্ট্রিক ট্রান্সপোর্ট সিকিউরিটি (এইচএসটিএস) সক্ষম করুন


চালু করার সেরা উপায় কি HTTP কঠোর পরিবহন নিরাপত্তা একটি আইআইএস 7 ওয়েব সার্ভারে?

আমি কি শুধু জিআইআইয়ের মাধ্যমে এবং যথাযথ HTTP প্রতিক্রিয়া শিরোনাম যোগ করতে পারি অথবা আমি কি এসিসিএমডি ব্যবহার করতে পারি এবং যদি তাই হয় তবে কী পরিবর্তন হয়?


69
2017-08-13 21:23


উত্স


এই অনেক উপর নির্ভর করে কিভাবে আপনি আইআইএস পরিবেশন করা স্টাফ তৈরি করছেন (উদাহরণস্বরূপ, আপনি আপনার অ্যাপ্লিকেশন থেকে পিএইচপি বা ASP.NET পৃষ্ঠাগুলিতে শিরোনাম সেট করতে পারেন)। আপনি আপনার ব্যবহারের ক্ষেত্রে সম্পর্কে আমাদের আরো বলতে পারেন? - voretaq7


উত্তর:


আইআইএস আছে প্রতিক্রিয়া কাস্টম হেডার যোগ করার ক্ষমতা। এটি সম্পর্কে যেতে সবচেয়ে সহজ উপায় বলে মনে হবে।

ডকুমেন্টেশন অনুযায়ী IIS.net আপনি আইআইএস ম্যানেজারের মাধ্যমে এই হেডার যুক্ত করতে পারেন:

  • সংযোগ ফলকটিতে, আপনি কোনও কাস্টম HTTP শিরোলেখ সেট করতে চান সেই সাইট, অ্যাপ্লিকেশন বা ডিরেক্টরিটিতে যান।
  • হোম ফলকটিতে, HTTP প্রতিক্রিয়া শীর্ষকগুলিতে ডাবল ক্লিক করুন।
  • HTTP প্রতিক্রিয়া শিরোনাম ফলকটিতে, ক্রিয়া ফলকটিতে ... যুক্ত করুন ক্লিক করুন।
  • কাস্টম HTTP প্রতিক্রিয়া শিরোনাম ডায়লগ বক্স যোগ করুন, আপনার কাস্টম হেডারের জন্য নাম এবং মান সেট করুন, এবং তারপরে ঠিক আছে ক্লিক করুন।

17
2017-08-13 21:37



Web.config এ এটি করাও সম্ভব, যা আপনি পছন্দ করতে পারেন। আমি একটি নতুন উত্তর হিসাবে বিবরণ পোস্ট করেছি, কারণ তারা সোর্সকোড ফর্ম্যাটিং ছাড়াই পড়তে সত্যিই কঠিন হবে যা মন্তব্যগুলিতে উপলব্ধ নয়। - Owen Blacker
প্রস্তুতকারকের মতে HTTP কঠোর পরিবহন নিরাপত্তা আইআইএস মডিউল, শুধু কাস্টম হেডার যোগ করা খসড়া স্পেসিফিকেশন (RFC 6797) এর সাথে সঙ্গতিপূর্ণ নয়। আপনি আসলে এই আইআইএস মডিউল ইনস্টল করতে হবে। - Chris
@Chris তারা (kinda) ভুল। স্পেক সম্পর্কে নয় - তারা একেবারে ঠিক আছে - তবে তাদের মডিউল থেকে দূরে থাকা কোনও "সহজ" উপায় নেই: কেবলমাত্র 2 টি সাইট তৈরি করুন, SSL এর জন্য (শিরোনামের সাথে) এবং একটি অ-SSL- এর জন্য শিরোনাম ছাড়া)। অবশ্যই মডিউল একটু বেশি মার্জিত, কিন্তু এটা না প্রয়োজনীয় (এবং যদি আপনার সাইটটি কেবলমাত্র https- এ থাকে এবং আপনি প্লেইন HTTP প্রতিক্রিয়াগুলি সরবরাহ না করেন তবে এগুলি পুরোপুরি জরুরী নয়)। - voretaq7
@Chris আপনাকে অবশ্যই একটি মডিউল উল্লেখ করতে হবে যা যদিও মডিউল - বিনামূল্যে আপভোট! (আমি এটির অস্তিত্ব সম্পর্কে সচেতন ছিলাম না এবং অনেক লোকের জন্য এটি সম্ভবত কাস্টম হেডারের স্টাফের চেয়ে সহজ / উন্নত বিকল্প) - voretaq7


এটি আমাদের উভয় HTTP পুনঃনির্দেশকে পরিচালনা করতে এবং স্টিক্ট-ট্রান্সপোর্ট-সিকিউরিটি শিরোনামটিকে একটি একক আইআইএস সাইটের সাথে HTTPS প্রতিক্রিয়াগুলিতে যুক্ত করতে দেয় (URL পুনর্বিবেচনা মডিউল ইনস্টল করতে হবে):

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="HTTP to HTTPS redirect" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}"
                        redirectType="Permanent" />
                </rule>
            </rules>
            <outboundRules>
                <rule name="Add Strict-Transport-Security when HTTPS" enabled="true">
                    <match serverVariable="RESPONSE_Strict_Transport_Security"
                        pattern=".*" />
                    <conditions>
                        <add input="{HTTPS}" pattern="on" ignoreCase="true" />
                    </conditions>
                    <action type="Rewrite" value="max-age=31536000" />
                </rule>
            </outboundRules>
        </rewrite>
    </system.webServer>
</configuration>

103
2017-09-18 17:05



ধন্যবাদ, এই উত্তরের উত্তর! স্ট্যাটিক এইচটিএমএল ফাইলগুলিতে শিরোনাম যোগ করে, প্রোগ্রামিক পদ্ধতির বিপরীতে। এবং HTTP এ যোগ করা হয় না, এইভাবে মান অনুযায়ী conforming। - Jeow Li Huan
যখন আমি এটি web.config এর আমার <system.webServer> বিভাগে যোগ করি তখন আমার ASP.NET পৃষ্ঠাগুলিতে 500 টি ত্রুটি ঘটে। এই নোডের জন্য <rewrite> বাচ্চা বলে মনে হচ্ছে না (msdn.microsoft.com/en-us/library/ms689429.aspx)। - Mathemats
@ মথম্যাটস আইআইএসে ইউআরএল রিভারাইট ইনস্টল আছে? - Doug Wilson
না, আরো গবেষণা করার পরে আমি খুঁজে পাই যে পুনর্লিখন ট্যাগটি এক্সটেনশান (ডি ও ওহ) দ্বারা সরবরাহ করা হয়। আমি যে সব উত্তর খুঁজে পাই তা নির্ভরতা হিসাবে এক্সটেনশনটি উল্লেখ করতে পারে না, সম্ভবত আপনি আপনার উত্তরটিতে একটি লাইনার নিক্ষেপ করতে পারেন যা বলার প্রয়োজন। - Mathemats
hstspreload.org ব্যবহারকারী যুক্ত করতে চাইছে; অন্তর্ভুক্ত করুন SubDomains; সর্বাধিক বয়স মান পরে preload`। অপশন। সম্পূর্ণ লাইন হবে: <action type="Rewrite" value="max-age=31536000 ;includeSubDomains; preload" /> একটি পেতে পাস hstspreload.org এ - JP Hellemons


সম্পূরক voretaq7এর উত্তর, আপনি Web.config ফাইলটি ব্যবহার করে এটিও করতে পারেন (এনবি: শুধুমাত্র এসএসএস সাইটের জন্য ব্যবহার করা হবে, কারণ এটি HTTP এবং HTTPS প্রতিক্রিয়াগুলির জন্য শিরোনাম যুক্ত করবে যা RFC 6797 স্পেসিফিকেশনটির বিরুদ্ধে রয়েছে, দয়া করে দেখুন নীচের ব্যাখ্যা) - নিম্নরূপ একটি ব্লক যোগ করুন:

<system.webServer>
    <httpProtocol>
        <customHeaders>
            <add name="Strict-Transport-Security" value="max-age=31536000"/>
        </customHeaders>
    </httpProtocol>
</system.webServer>

অবশ্যই, আপনি ইতিমধ্যে একটি থাকতে পারে system.webServer আপনার Web.config ব্লক করুন, তাই যদি তাই হয়, এটি যোগ করুন। আমরা GUI এর পরিবর্তে Web.config এ জিনিসগুলিকে পরিচালনা করতে পছন্দ করি, কারণ এর মানে আমাদের কনফিগারেশন পরিবর্তনগুলি আমাদের গিট রিপোজিটরিতে প্রতিশ্রুতিবদ্ধ হতে পারে।

যদি আপনি HTTP-to-SSL পুনঃনির্দেশ পরিচালনা করতে চান তবে গ্রেগ জিজ্ঞাসা উল্লিখিত, আপনি আইআইএস একটি পৃথক ওয়েবসাইট সঙ্গে এটি করতে সহজ হতে পারে। এইভাবে আমরা কিছু ক্লায়েন্ট সাইটগুলির জন্য SSL প্রয়োজন হ্যান্ডেল করি। যে সাইটে শুধুমাত্র একটি HTTP পুনঃনির্দেশ এবং কিছু রয়েছে তথ্য প্রকাশ সমাধান, Web.config মধ্যে সব:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.web>
    <httpRuntime requestValidationMode="2.0" enableVersionHeader="false" />
  </system.web>
  <system.webServer>
    <httpRedirect enabled="true" destination="https://www.domain.co.uk/"
      httpResponseStatus="Permanent" />
    <httpProtocol>
      <customHeaders>
        <remove name="X-Powered-By" />
      </customHeaders>
    </httpProtocol>
    <rewrite>
      <outboundRules>
        <rule name="Remove RESPONSE_Server">
          <match serverVariable="RESPONSE_Server" pattern=".+" />
          <action type="Rewrite" value="" />
        </rule>
      </outboundRules>
    </rewrite>
  </system.webServer>
</configuration>

এটি কয়েকটি কারণের জন্য আমাদের পছন্দসই সমাধান - আমরা সহজেই পুনঃনির্দেশিত ট্র্যাফিকটি আলাদাভাবে লগ-ইন করতে পারি (যেমন এটি একটি ভিন্ন আইআইএস লগে রয়েছে), এটি গ্লোবাল.এক্সএক্সএসএস-এ আরও কোড অন্তর্ভুক্ত করে না (আমাদের কোনও কোড নেই সেখানে, যা উম্ব্রোকো সাইটের জন্য আরও বেশি সুবিধাজনক) এবং গুরুত্বপূর্ণ, এর মানে হল যে সমস্ত কনফিগার এখনও আমাদের জিআইটি রেপোতে অনুষ্ঠিত হচ্ছে।

যোগ করার জন্য সম্পাদনা করা হয়েছে: মেনে চলতে, পরিষ্কার করা আরএফসি 6797, দ্য Strict-Transport-Security কাস্টম হেডার না অবশ্যই এনক্রিপ্ট করা HTTP দ্বারা তৈরি অনুরোধ যোগ করা হবে। RFC6797-compliant হতে, আপনার অবশ্যই আইআইএস-তে দুটি সাইট থাকতে হবে, যেমন আমি প্রথম কোড ব্লকের পরে বর্ণনা করেছি। যেমন ক্রিস পয়েন্ট আউট, RFC 6797 অন্তর্ভুক্ত:

একটি এইচএসটিএস হোস্ট না অবশ্যই HTTP প্রতিক্রিয়াগুলিতে STS শিরোনাম ক্ষেত্রটি অন্তর্ভুক্ত করুন যাতে নিরাপদ পরিবহন না ঘটে।

তাই পাঠানো Strict-Transport-Security একটি অ-SSL অনুরোধের প্রতিক্রিয়ায় গ্রাহক শিরোনাম স্পেসিফিকেশন মেনে চলবে না।


36
2018-03-20 15:06



ওভেন ব্ল্যাকার প্রতিক্রিয়া যোগ করার জন্য, আইআইএসের জন্য আমি URLScan 3.1 ব্যবহার করি এবং এটি সরল সার্ভারটি সরান সার্ভারটি RemoveServerHeader = 1 সেট করে সরিয়ে ফেলুন, বাকি সেটিংসটি প্রতিটি সাইট web.config ফাইলে থাকা বাধ্যতামূলক। আমি শুধু মান blanking এই পছন্দ। - KeyOfJ
URLScan একটি খুব সাধারণ সমাধান এবং আমি সুপারিশ করব, আমি সুপারিশ করছি তার চেয়েও ভাল। কিন্তু এটি সর্বদা সর্বাধিক সুবিধাজনক সমাধান নয়: o) - Owen Blacker
HTTPS এবং HTTP সক্ষম (এটি পুনঃনির্দেশিত করতে পারে) সহ কোনও সাইটে এটি যুক্ত করার জন্য BREAK টি গুরুত্বপূর্ণ সাইটটি মনে রাখবেন! আপনি লগ ইন কোন ত্রুটি সঙ্গে, CustomErrors মোড = "বন্ধ" এমনকি একটি তথ্যহীন 500 পাবেন। - Chris Moschini
@ChrisMoschini আমি পরিষ্কার ছিলাম যে প্রথম Web.config লাইন একটি কেবলমাত্র SSL-সাইটের জন্য হওয়া উচিত। - Owen Blacker
অ-এসএসএল-তে সীমাবদ্ধ-পরিবহন-নিরাপত্তা কেন অনুমোদিত নয়? এটি ব্রাউজারের জন্য https এ পরিবর্তন করার জন্য একটি সূচক হবে। স্পেসিফিকেশন একটি বাগ, বা একটি নির্দিষ্ট কারণ আছে? - Lenne


আমি আপনার উল্লেখিত উইকিপিডিয়া লিঙ্ক থেকে উদাহরণটি ব্যবহার করব এবং সাইটের জন্য global.asax এ ক্রিয়াকলাপটি করব। এটি একটি https url, এবং অনুরোধে পুনঃনির্দেশ পুনঃনির্দেশ করতে সক্ষম করে তারপর প্রতিক্রিয়া মধ্যে হেডার সন্নিবেশ করান।

এটি যদি কোনো https প্রতিক্রিয়া না থাকে তবে HSTS হেডারকে উপেক্ষা করা আবশ্যক।

protected void Application_BeginRequest()
{
    switch (Request.Url.Scheme)
    {
        case "https":
            Response.AddHeader("Strict-Transport-Security", "max-age=31536000");
            break;
        case "http":
            var path = "https://" + Request.Url.Host + Request.Url.PathAndQuery;
            Response.Status = "301 Moved Permanently";
            Response.AddHeader("Location", path);
            break;
    }
}

8
2017-08-13 23:40





এই কাজ করার একটি প্রশংসনীয় ব্যর্থ নিরাপদ উপায় বলে মনে হচ্ছে। Global.asax এ এই কোডটি যুক্ত করুন - Application_BeginRequest ইভেন্ট ASP.net অনুরোধ লাইফ চক্রের মধ্যে প্রথমে আগুন লাগায়: http://msdn.microsoft.com/en-us/library/system.web.httpapplication.beginrequest(v=vs.110).aspx

স্পেক প্রতি, HTTP অনুরোধ শিরোনামের সাথে প্রতিক্রিয়া জানাতে হবে না - তাই এই কোডটি কেবল এটি https অনুরোধগুলির জন্য যোগ করে। সর্বোচ্চ বয়স সেকেন্ডের সংখ্যা এবং এখানে একটি বৃহত মান স্থাপন করা একটি ভাল ধারণা (IE - 31536000 সাইটটি পরবর্তী 365 দিনের জন্য শুধুমাত্র SSL চালাবে বলে নির্দেশ করে)

protected void Application_BeginRequest(Object sender, EventArgs e)
{
  switch (Request.Url.Scheme)
  {
    case "https":
      Response.AddHeader("Strict-Transport-Security", "max-age=31536000");
      break;
    case "http":
      var path = "https://" + Request.Url.Host + Request.Url.PathAndQuery;
      Response.Status = "301 Moved Permanently";
      Response.AddHeader("Location", path);
      break;
  }
}

3
2018-03-20 03:20





HTTP স্ট্রিট ট্রান্সপোর্ট সিকিউরিটি আইআইএস মডিউল নির্মাতাদের মতে, কাস্টম হেডার যোগ করা খসড়া স্পেসিফিকেশন (RFC 6797) এর সাথে সঙ্গতিপূর্ণ নয়।

আপনি আসলে এই ইনস্টল করতে হবে আইআইএস মডিউল আইআইএস 7 এ এইচএসটিএস চালু করতে।

আপডেট 26 Okt 2014: নিচের মন্তব্যকারীর জন্য ধন্যবাদ, আমি আবার মডিউল পৃষ্ঠাটি পড়েছি এবং বিশেষ করে এমন অংশ যা কাস্টম শিরোলেখ যুক্ত করার জন্য মডিউল ব্যবহারকে সমর্থন করে।

একটি এইচএসটিএস হোস্টটি অ-নিরাপদ পরিবহন সম্পর্কে HTTP প্রতিক্রিয়াগুলিতে STS শিরোনাম ক্ষেত্র অন্তর্ভুক্ত করতে হবে না।

আপনি যদি এইচটিটিপিএসগুলিতে শুধুমাত্র হেডারগুলি যোগ করতে না চান এবং এইচটিওএটিতে না থাকেন তবে আপনাকে এই মডিউলটির প্রয়োজন নেই এবং আপনি ডগ উইলসনের উত্তরটি ব্যবহার করতে পারেন। ওভেন ব্ল্যাকারের উত্তরটি ব্যবহার করবেন না কারণ এতে https শর্ত নেই।


1
2018-03-03 21:14



তাই অন্য কিছু উত্তর যা শুধুমাত্র হেডারের অনুরোধগুলিতে শিরোনাম পাঠায় তবে এই সমস্যার সমাধান করুন? নাকি আপনার মডিউল অন্য কিছু সমাধান করে না? - slolife
@ স্ললিফ আমি আমার উত্তর আপডেট। আপনি ডগ উইলসনের উত্তরের কোডটি ব্যবহার করতে পারেন। আপনি এই মডিউল প্রয়োজন হবে না। আমি এখন দেখতে পেয়েছি যে এটি গ্রহণযোগ্য উত্তরের মন্তব্যগুলিতেও আলোচনা করা হয়েছে। আমি এই মডিউল অন্য কিছু সমাধান না যে কিছু ভিন্ন / অতিরিক্ত কাজ সচেতন নই। কিন্তু আমি একটি সম্পূর্ণ চেক না সোর্স কোড পারেন। - Chris
আমি পরিষ্কার ছিলাম যে প্রথম Web.config একটি SSL-only সাইটে প্রয়োগ করা উচিত। আমি যে স্পষ্টতা আমার উত্তর সম্পাদনা করব। - Owen Blacker


ডগ উইলসন দ্বারা প্রদত্ত উদাহরণটি ব্যবহার করে আমি HTTPS এ পুনঃনির্দেশনের জন্য এবং এইচএসটিএস হেডার যুক্ত করার জন্য ইউআরএল পুনর্লিখনের নিয়মগুলি যুক্ত করতে নিম্নলিখিত দুটি পাওয়ারশেল ফাংশন তৈরি করেছি।

এই উইন্ডোজ 2012 এবং উইন্ডোজ 2012 R2 পরীক্ষা করা হয়েছে।

আপনি কি করতে হবে ওয়েবসাইট নাম সরবরাহ করা হয়। ডিফল্টগুলি পছন্দ না করলে আপনি বিকল্পগুলি একটি ভিন্ন নামটি দিতে পারেন।

এক জিনিস মনে রাখতে হবে যে আমার পরীক্ষার থেকে, প্রতিক্রিয়া শিরোনামগুলিতে থাকা আগে সার্ভারের ভেরিয়েবলগুলিকে অনুমতি তালিকাতে যোগ করতে হবে। ফাংশন আপনার জন্য এই কাজ।

সম্পাদনা করুন: এখানে HTTP হেডারের জন্য ইউআরএল পুনর্বিবেচনার রেফারেন্স দেখুন: http://www.iis.net/learn/extensions/url-rewrite-module/setting-http-request-headers-and-iis-server-variables

Function Add-HTTPSRedirectRewriteRule()
{
    <#
        .SYNOPSIS
        This function is used to create a URL Rewrite Rule that redirects HTTP requests to HTTPS using a 301
        RuleName is optional and will default to "Redirect to HTTPS"

        .SYNTAX
        Add-HTTPSRedirectRewriteRule -WebsiteName "www.mywebsite.com"

        .EXAMPLES
        Add-HTTPSRedirectRewriteRule -WebsiteName "www.mywebsite.com"

        Add-HTTPSRedirectRewriteRule -WebsiteName "www.mywebsite.com" -RuleName "my rule name"

    #>


    [cmdletbinding(positionalbinding=$false)]
    Param
    (
        [parameter(mandatory=$true)][String] [ValidateNotNullOrEmpty()] $WebsiteName,
        [parameter(mandatory=$false)][String] $RuleName="Redirect to HTTPS"
    )

        Write-Verbose -Message "Creating the Url Rewrite rule ""$RuleName"" in website ""$WebsiteName"""
        Remove-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/rules" -name "." -AtElement @{name="$RuleName"}  -ErrorAction SilentlyContinue
        Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName" -filter "system.webServer/rewrite/rules" -name "." -value @{name="$RuleName";stopProcessing='True'}
        Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName" -filter "system.webServer/rewrite/rules/rule[@name='$RuleName']/match" -name "url" -value "(.*)"
        Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName" -filter "system.webServer/rewrite/rules/rule[@name='$RuleName']/conditions" -name "." -value @{input='{HTTPS}';pattern='off'}
        Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName" -filter "system.webServer/rewrite/rules/rule[@name='$RuleName']/action" -name "type" -value "Redirect"
        Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName" -filter "system.webServer/rewrite/rules/rule[@name='$RuleName']/action" -name "url" -value "https://{HTTP_HOST}/{R:1}"
}

Function Add-HSTSHeaderRewriteRule()
{
    <#
        .SYNOPSIS
        This function is used to create a URL Rewrite Rule that sets an HTTP Response Header for Strict-Transport-Security
        when the protocol requested is HTTPS

        RuleName is optional and will default to "Add Strict-Transport-Security header when request is HTTPS"

        .SYNTAX
        Add-HSTSHeaderRewriteRule -WebsiteName "www.mywebsite.com"

        .EXAMPLES
        Add-HSTSHeaderRewriteRule -WebsiteName "www.mywebsite.com"

        Add-HSTSHeaderRewriteRule -WebsiteName "www.mywebsite.com" -RuleName "my rule name"

    #>

    [cmdletbinding(positionalbinding=$false)]
    Param
    (
        [parameter(mandatory=$true)][String] [ValidateNotNullOrEmpty()] $WebsiteName,
        [parameter(mandatory=$false)][String]$RuleName="Add Strict-Transport-Security header when request is HTTPS"
    )

    $serverVariable = "RESPONSE_Strict_Transport_Security"

    Write-Verbose -Message "Creating the HSTS Header rule ""$RuleName"" in website ""$WebsiteName"""

    Remove-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName" -filter "system.webServer/rewrite/allowedServerVariables" -name "." -AtElement @{name="$serverVariable"} -ErrorAction SilentlyContinue
    Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location "$WebsiteName"  -filter "system.webServer/rewrite/allowedServerVariables" -name "." -value @{name="$serverVariable"}

    Remove-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -name "." -filter "system.webServer/rewrite/outboundRules" -AtElement @{name="$RuleName"} -ErrorAction SilentlyContinue

    Add-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/outboundRules" -name "." -value @{name="$RuleName"}
    Set-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/outboundRules/rule[@name='$RuleName']/match" -name "serverVariable" -value $serverVariable
    Set-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/outboundRules/rule[@name='$RuleName']/match" -name "pattern" -value ".*"
    Add-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/outboundRules/rule[@name='$RuleName']/conditions" -name "." -value @{input='{HTTPS}';pattern='on'}
    Set-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/outboundRules/rule[@name='$RuleName']/action" -name "type" -value "Rewrite"
    Set-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST" -location "$WebsiteName" -filter "system.webServer/rewrite/outboundRules/rule[@name='$RuleName']/action" -name "value" -value "max-age=31536000"

}

1
2018-02-04 16:51





ওয়েবে নিম্নলিখিত ব্লক যুক্ত করে এটি করা যেতে পারে। কনফিগ:                                 

আমরা আইআইএস কনফিগার করতে হবে যে প্রতিক্রিয়া প্রতিক্রিয়া হেডারের ক্ষমতা আছে:

  • ইন্টারনেট ইনফরমেশন সার্ভিসেস (আইআইএস) ম্যানেজার এ যান।
  • সার্ভার থেকে প্রতিক্রিয়া যোগ করা প্রতিক্রিয়া শিরোনাম কনফিগার করুন।
  • এখন আপনার কাস্টম শিরোনাম নাম এবং কাস্টম মান যুক্ত করুন (কাস্টম হেডারের নাম এবং মান Web.Config এ একই রকম হওয়া উচিত)। আপনি খুঁজে পেতে পারেন ব্লগ

0
2017-12-15 13:39