(413) সত্তা খুব বড় অনুরোধ করুন | uploadReadAheadSize


136

আমি নেট নেট সাথে একটি ডাব্লুসিএফ পরিষেবা লিখেছি, যা x64আইআইএস 7.5 এর সাথে আমার উইন্ডোজ 7 আলটিমেট সিস্টেমে হোস্ট করা আছে । পরিষেবা পদ্ধতিগুলির মধ্যে একটিতে যুক্তি হিসাবে একটি 'অবজেক্ট' রয়েছে এবং আমি একটি বাইট [] পাঠাতে চেষ্টা করছি যাতে একটি ছবি রয়েছে। যতক্ষণ না এই ছবির ফাইলের আকার কম হয় তবে প্রায়। 48 কেবি, সব ঠিক আছে। তবে যদি আমি আরও বড় ছবি আপলোড করার চেষ্টা করি, ডাব্লুসিএফ পরিষেবাটি একটি ত্রুটি ফিরিয়ে দেয়: (413) Request Entity Too Large. অবশ্যই অবশ্যই আমি ত্রুটি বার্তাটি গুগলিংয়ে 3 ঘন্টা ব্যয় করেছি এবং এই বিষয় সম্পর্কে আমি যতটা বিষয় দেখেছি প্রতিটি বিষয়ই 'আপলোডআডএডসাইজড' সম্পত্তি বাড়ানোর পরামর্শ দেয়। সুতরাং আমি যা করেছি তা নিম্নলিখিত কমান্ডগুলি (10485760 = 10MB) ব্যবহার করছে:

"appcmd.exe set config -section:system.webserver/serverruntime/uploadreadaheadsize: 10485760 /commit:apphost"

"cscript adsutil.vbs set w3svc/<APP_ID>/uploadreadaheadsize 10485760"

সাইটটি খোলার মাধ্যমে এবং ম্যানেজমেন্টের অধীনে "কনফিগারেশন এডিটর" এ গিয়ে মান নির্ধারণ করতে আমি আইআইএস ম্যানেজারকেও ব্যবহার করেছি। দুর্ভাগ্যক্রমে আমি এখনও অনুরোধ সত্তাকে অনেক বড় ত্রুটি পেয়েছি এবং এটি হতাশ হয়ে উঠছে!

সুতরাং কেউ কি জানেন যে আমি এই ত্রুটিটি সংশোধন করার জন্য আরও কী চেষ্টা করতে পারি?


6
10485760 = 10 এমবি, 1 এমবি নয়
শন রোয়ান

উত্তর:


206

এটি আইআইএসের সমস্যা নয়, ডাব্লুসিএফের সমস্যা। বড় বার্তাগুলির সাহায্যে পরিষেবা আক্রমণ অস্বীকার এড়াতে ডাব্লুসিএফ ডিফল্টরূপে বার্তাগুলিকে 65KB-এ সীমাবদ্ধ করে। এছাড়াও আপনি যদি এমটিওএম ব্যবহার না করেন তবে এটি বেস 64 টি এনকোড স্ট্রিংকে ([আকারে 33% বৃদ্ধি) => 48 কেবি * 1,33 = 64 কেবিতে বাইট পাঠায়

এই সমস্যাটি সমাধান করার জন্য আপনাকে বৃহত্তর বার্তাগুলি গ্রহণের জন্য আপনার পরিষেবাটি পুনরায় কনফিগার করতে হবে। এই ইস্যুটি আগে 400 টি অনুরোধ ত্রুটিটি বাতিল করেছে তবে নতুন সংস্করণে ডাব্লুসিএফ 413 ব্যবহার করা শুরু করেছে যা এই ধরণের ত্রুটির জন্য সঠিক স্থিতি কোড is

আপনাকে maxReceivedMessageSizeআপনার বাঁধাই করতে হবে। আপনি সেট করতে হবে readerQuotas

<system.serviceModel>
  <bindings>
    <basicHttpBinding>
      <binding maxReceivedMessageSize="10485760">
        <readerQuotas ... />
      </binding>
    </basicHttpBinding>
  </bindings>  
</system.serviceModel>

8
আমি উপরের মানটিতে সর্বোচ্চআরসিভডমেজেজ সাইজ সেট করে রেখেছি তবে তবুও আমি একই ত্রুটি পেয়েছি .. অনুরোধ
সত্তাটি

11
@ সন্দেপকু- ঠিক তেমন ক্ষেত্রে ... আমার দীর্ঘদিন ধরে একই সমস্যা ছিল, এবং তখন বুঝতে পেরেছিলাম যে আমি বাইন্ডিং নামটি ভুল করে রেখেছি, তাই ডাব্লুসিএফ আমার কনফিগার মানগুলির পরিবর্তে ডিফল্ট মানগুলি ব্যবহার করছিল, এবং আমাকে ঠিক দিচ্ছিল একই ত্রুটি
অ্যাড্রিয়ান কার

1
আমি উপরের মানটিতে ম্যাক্সরাইভেডমেসেজ সাইজ সেট করেছি তবে তবুও আমি একই ত্রুটি পেয়েছি .. অনুরোধ সত্তাটি অনেক বড়। বাঁধাইয়ের নামটি খালি নয়। সাহায্য করুন!
নেটসাইট

2
ধন্যবাদ স্যার, এখনই এটি সহায়ক ছিল! ম্যাক্সরেক্টেডমেসেজসাইজের জন্য একটি নতুন মান নির্ধারণের জন্য ম্যাক্সফারসাইজের জন্য একই মান নির্ধারণ করা দরকার।
DiligentKarma

1
@ সান্দেক্কু যদি আপনি আরইএসটি-র জন্য ওয়েব-এইচটিপিবাইন্ডিং ব্যবহার করে থাকেন তবে আপনাকে <বাইন্ডিং> এ বাইন্ডিং কনফিগারেশনের সমান <বাইন্ডিং>
স্মুথামুট

55

আমি ডাব্লুসিএফ আরএসটি পরিষেবা সহ আইআইএস .5.৫ এর একই সমস্যা ছিল। POSST এর মাধ্যমে 65k এর উপরে যে কোনও ফাইল আপলোড করার চেষ্টা করা হচ্ছে এবং এটি 413 ত্রুটির সাথে "অনুরোধ সত্তাকে খুব বড় করে" ফিরিয়ে দেবে।

আপনাকে প্রথম যে বিষয়টি বোঝার দরকার তা হ'ল ওয়েবকনফিগে আপনি কী ধরণের বাঁধাই কনফিগার করেছেন। এখানে একটি দুর্দান্ত নিবন্ধ ...

বেসিকচ্যাট্পবাইন্ডিং বনাম ডাব্লুএসএইচটিপিবাইন্ডিং বনাম ওয়েবএইচটিএফপিন্ডিং

আপনার যদি একটি আরইএসটি পরিষেবা থাকে তবে আপনার এটিকে "ওয়েবএইচটিএপপাইন্ডিং" হিসাবে কনফিগার করতে হবে। এখানে ঠিক আছে:

<system.serviceModel>

<bindings>
   <webHttpBinding>
    <binding 
      maxBufferPoolSize="2147483647" 
      maxReceivedMessageSize="2147483647" 
      maxBufferSize="2147483647" transferMode="Streamed">
    </binding>  
   </webHttpBinding>
</bindings>

2
ধন্যবাদ, এটি আমার জন্য ডব্লিউসিএফ আরএসটি পরিষেবা ব্যবহার করে আইআইএস 7.5 ব্যবহার করে। আসলে, আমি কেবলমাত্র সর্বাধিক গ্রহণযোগ্যতা ম্যাসেজসাইজ বৈশিষ্ট্যটি সংশোধন করতে হয়েছিল।
অ্যালেক্স ইউলি

আমার কাছে ম্যাক্সেরিটেডমেসেজ সাইজ ছিল, ম্যাক্সফারসাইজ ট্রিকটি করেছিল, ম্যাক্সফারপুলসাইজ একটি অবৈধ বৈশিষ্ট্য হিসাবে দেখিয়েছিল।
জ্যাবারওয়কি ডিকম্পোলার 21

4
নিশ্চিত হয়ে নিন যে আপনি বাঁধাইয়ের নামটি সংজ্ঞায়িত করেছেন এবং এটিকে শেষের পয়েন্টে বাইন্ডিং কনফিগারেশনের সমান করুন। উদাঃ <বাইন্ডিং নাম = "রেস্টলার্জবাইন্ডিং" ম্যাক্সবফারপুলসাইজ = ..........>। এবং পরিষেবা কনফিগারেশন; <সমাপ্তি ঠিকানা = "" বাঁধাই = "ওয়েবহট্টপিন্ডিং" বাইন্ডিং কনফিগারেশন = "রেস্টলার্জবাইন্ডিং" .......
স্মুথামুট

2
দুর্দান্ত কাজ করে, যদিও ট্রান্সফার সেট করে
মোড

1
@ স্মোথুমুট আমি জানি এটি পুরানো, তবে বাইন্ডিং কনফিগারেশন = "রেস্টলার্জবাইন্ডিং" আমার জন্য কৌশলটি করেছে! উপায় দ্বারা আমি স্ব হোস্টেড ডাব্লুসিএফ পরিষেবা ব্যবহার করছি।
ramires.cabral

26

আমার একই সমস্যা ছিল এবং সমাধানটি সেট uploadReadAheadSizeকরেছিলাম:

http://www.iis.net/configreference/system.webserver/serverruntime

"মানটি 0 এবং 2147483647 এর মধ্যে হওয়া উচিত" "

আপনি যদি কোনও সিএমডি-জিনিসটি না করতে চান তবে এটি সহজেই অ্যাপ্লিকেশন হোস্টকনফিগ-ফ্লাইটে সেট করা থাকে।

এটি WindowsFOLDER\System32\inetsrv\config(2008 সার্ভার) এ অবস্থিত ।

আপনাকে অবশ্যই এটি নোটপ্যাড দিয়ে খুলতে হবে। প্রথমে ফাইলটির ব্যাকআপ করুন।

কনফিগারেশনে মন্তব্য অনুসারে বিভাগগুলি আনলক করার প্রস্তাবিত উপায়টি হ'ল লোকেশন ট্যাগ ব্যবহার করে:

<location path="Default Web Site" overrideMode="Allow">
    <system.webServer>
        <asp />
    </system.webServer>
</location>"

সুতরাং আপনি নীচে লিখতে পারেন (যেহেতু এটি আগে বিদ্যমান নেই)। আমি maxvalueএখানে লিখছি - আপনি চান নিজের মান লিখুন।

<location path="THENAMEOFTHESITEYOUHAVE" overrideMode="Allow">
    <system.webServer>
        <asp />
        <serverRuntime uploadReadAheadSize="2147483647" />
    </system.webServer>
</location>

</configuration>উদাহরণস্বরূপ আপনি যদি এটি আগে রাখেন তবে আপনি জানেন যে এটি কোথায় রয়েছে।

আশা করি এটি আপনার সমস্যার সমাধান করে। এটি আমার জন্য একটি এসএসএল ওভারহেড ইস্যু ছিল, যেখানে খুব বেশি পোস্ট অ্যাপ্লিকেশন হিমশীতল করে, একটি (413) অনুরোধ সত্তার পক্ষে খুব বড় ত্রুটি বাড়িয়ে তোলে ।


1
ইতিমধ্যে maxReceivedMessageSizeint.MaxValue এ সেট করা, এটি কৌশলটি করেছে। আমি অবাক হয়েছি যদি এই বিকল্পটি ইনট্যাক্স ম্যাক্সভ্যালুতে সেট করার বিষয়েও কোনও বড় উদ্বেগ রয়েছে?
ল্যাংডন

2
যদি আপলোডআডএডসাইজ আইআইএস দিয়ে চলমান না, স্ব-হোস্ট করা ডাব্লুসিএফ পরিষেবাদিগুলির সাথেও প্রাসঙ্গিক হয় তবে কি কেউ জানতে পারবেন? অর্থাৎ এটি কি সাধারণভাবে উইন্ডোজ সার্ভার সম্পর্কিত কোনও সমস্যা?
অ্যানস্কোড

@্যান্সকোড আমার একটি স্ব-হোস্টেড এপি আছে এবং একই সমস্যা ভুগছে - আপনি কি নিজের স্ব-হোস্টেড পরিষেবা দিয়ে সমাধান করেছেন?
ট্রেভর ড্যানিয়েল

18

maxআমার ডাব্লুসিএফ পরিষেবা কনফিগারেশন ফাইলের বাইন্ডিংয়ের মধ্যে আমার সেটিংস সেট করা থাকলেও আমি এই ত্রুটি বার্তাটি পেয়েছিলাম :

<basicHttpBinding>
        <binding name="NewBinding1"
                 receiveTimeout="01:00:00"
                 sendTimeout="01:00:00"
                 maxBufferSize="2000000000"
                 maxReceivedMessageSize="2000000000">

                 <readerQuotas maxDepth="2000000000"
                      maxStringContentLength="2000000000"
                      maxArrayLength="2000000000" 
                      maxBytesPerRead="2000000000" 
                      maxNameTableCharCount="2000000000" />
        </binding>
</basicHttpBinding>

দেখে মনে হয়েছিল যে এই বাঁধাই সেটিংস প্রয়োগ করা হচ্ছে না, সুতরাং নিম্নলিখিত ত্রুটি বার্তা:

আইআইএস 7 - (413) পরিষেবার সাথে সংযোগ করার সময় সত্তাটিকে খুব বেশি অনুরোধ করুন।

সমস্যাটি

আমি বুঝতে পারি যে name=""মধ্যে অ্যাট্রিবিউট <service>এর ট্যাগ web.configহয় না একটি বিনামূল্যে টেক্সট ক্ষেত্রের, যেমন আমি ভেবেছিলাম এটা ছিল। এটা একটি সেবা চুক্তির একটি বাস্তবায়ন পূর্ণ যোগ্য নাম হিসাবে মধ্যে উল্লিখিত এই ডকুমেন্টেশন পৃষ্ঠা

যদি এটি মেলে না, তবে বাধ্যতামূলক সেটিংস প্রয়োগ করা হবে না!

<services>
  <!-- The namespace appears in the 'name' attribute -->
  <service name="Your.Namespace.ConcreteClassName">
    <endpoint address="http://localhost/YourService.svc"
      binding="basicHttpBinding" bindingConfiguration="NewBinding1"
      contract="Your.Namespace.IConcreteClassName" />
  </service>
</services>

আমি আশা করি যে কাউকে কিছুটা বেদনা বাঁচায় ...


1
এই সমাধান যোগ করার জন্য ধন্যবাদ! অপ্রত্যক্ষভাবে আমার সমস্যার সমাধান করে যে আমার চুক্তির নামটি দেবে পরিবর্তিত হয়েছিল তবে পরিবর্তনটি সঠিকভাবে উত্পাদনে স্থাপন করা হয়নি। এই সেটিংটি চেক করা আমার (413) ডিফল্ট বার্তা আকারের সেটিংস ব্যবহারের কারণে সত্তার অনুরোধ সত্তা অত্যধিক বড় ত্রুটিগুলি সমাধান করেছে।
ডগ নুডসেন

আমি সত্যিই খুশি যে এটি কাউকে সাহায্য করেছে। আমি এটিতে বেশ ভাল সময় ব্যয় করেছি তাই আমি আশা করি এটি কারও দিনকে কম বেদনাদায়ক করে তুলবে।
লুক

9

আপনি যদি এই থ্রেডের সমস্ত সমাধানের চেষ্টা করেও এই সমস্যাটিতে চলেছেন এবং আপনি এসএসএল (যেমন https) এর মাধ্যমে সার্ভিসে সংযোগ করছেন, এটি সাহায্য করতে পারে:

http://forums.newatlanta.com/messages.cfm?threadid=554611A2-E03F-43DB-92F996F4B6222BC0&#top

সংক্ষিপ্তসার হিসাবে (ভবিষ্যতে লিঙ্কটি মারা যাওয়ার ক্ষেত্রে), যদি আপনার অনুরোধগুলি ক্লায়েন্ট এবং পরিষেবার মধ্যে শংসাপত্রের আলোচনার পরিমাণ যথেষ্ট পরিমাণে এলোমেলোভাবে ব্যর্থ হয়। এটি যাতে না ঘটে তার জন্য আপনাকে আপনার এসএসএল বাইন্ডিংগুলিতে একটি নির্দিষ্ট সেটিংস সক্ষম করতে হবে। আপনার আইআইএস সার্ভার থেকে, আপনাকে নিতে হবে এমন পদক্ষেপগুলি এখানে:

  1. সেন্টিমিডি বা পাওয়ারশেলের মাধ্যমে, চালান netsh http show sslcert। এটি আপনাকে আপনার বর্তমান কনফিগারেশন দেবে। আপনি এটি কোনওভাবে সংরক্ষণ করতে চাইবেন যাতে আপনি এটি পরে আবার উল্লেখ করতে পারেন।
  2. আপনার লক্ষ্য করা উচিত যে "আলোচনা সাপেক্ষে ক্লায়েন্ট শংসাপত্র" অক্ষম রয়েছে। এটিই সমস্যা নির্ধারণ; নিম্নলিখিত পদক্ষেপগুলি কীভাবে এটি সক্ষম করতে হবে তা প্রদর্শন করবে।
  3. দুর্ভাগ্যক্রমে বিদ্যমান বাইন্ডিংগুলি পরিবর্তন করার কোনও উপায় নেই; আপনাকে এটি মুছতে হবে এবং এটি আবার যুক্ত করতে হবে। netsh http delete sslcert <ipaddress>:<port>যেখানে দৌড়াও<ipaddress>:<port> সংরক্ষণ করেছেন কনফিগারেশনে আইপি: পোর্টটি তা ।
  4. এখন আপনি বাইন্ডিং পুনরায় যুক্ত করতে পারেন। আপনি netsh http add sslcert এখানে (এমএসডিএন) এর বৈধ প্যারামিটারগুলি দেখতে পারেন তবে বেশিরভাগ ক্ষেত্রে আপনার আদেশটি এর মতো দেখতে পাবেন:

netsh http add sslcert ipport=<ipaddress>:<port> appid=<application ID from saved config including the {}> certhash=<certificate hash from saved config> certstorename=<certificate store name from saved config> clientcertnegotiation=enable

আপনার যদি একাধিক এসএসএল বাইন্ডিং থাকে তবে আপনি তাদের প্রত্যেকের জন্য প্রক্রিয়াটি পুনরাবৃত্তি করবেন। আশা করি এটি এই সমস্যার কারণ হয়ে ওঠার সময় এবং ঘন্টা ব্যতীত অন্য কাউকে বাঁচাতে সহায়তা করে।

সম্পাদনা: আমার অভিজ্ঞতায় আপনি netsh http add sslcertকমান্ডটি সরাসরি কমান্ড লাইন থেকে চালাতে পারবেন না । আপনাকে প্রথমে টাইপের মাধ্যমে নেট প্রম্পটে প্রবেশ করতে হবে netshএবং তারপরে http add sslcert ipport=...এটির কাজ করার জন্য আপনার কমান্ডটি পছন্দ করতে হবে।


পোস্টটির জন্য আপনাকে ধন্যবাদ, এটি আমাদের জন্য সমস্যাটি বিচ্ছিন্ন করতে সহায়তা করেছিল, এসএসএল বন্ধ করে ডাব্লুসিএফ ত্রুটি সরিয়ে দেয়। দুর্ভাগ্যক্রমে ক্লায়েন্টারটনেগোটেশন এসএসএলের সাথে কাজ করার জন্য আমাদের ফলাফলকে পরিবর্তন করে নি। স্টিল টগল করতে অন্যান্য বিটগুলি খুঁজছেন :-(
জাফিন

8

এটি আমাকে সমস্যার সমাধান করতে সহায়তা করেছে (এক লাইনে - পাঠযোগ্যতার জন্য অনুলিপি / অনুলিপি):

C:\Windows\System32\inetsrv\appcmd  set config "YOUR_WEBSITE_NAME" 
     -section:system.webServer/serverRuntime /uploadReadAheadSize:"2147483647" 
     /commit:apphost

আপনি কি শেয়ারপয়েন্ট পরিবেশে আপনার ডাব্লুসিএফ হোস্ট করছেন? এবং পরিবর্তনগুলি প্রয়োগ করার পরে কি আপনাকে আপনার আইআইএস পুনরায় চালু করতে হবে?
theitvideos

2

আমার জন্য, সেট uploadReadAheadSize ইনটাকে করা M ডাব্লুসিএফ বন্ডিংয়ের সীমাবদ্ধতা বাড়ানোর পরেও ম্যাক্সভ্যালুও সমস্যার সমাধান করেছে।

দেখে মনে হয়, এসএসএল ব্যবহার করার সময়, সম্পূর্ণ অনুরোধ সত্তা দেহটি পূর্ব লোড হয়, যার জন্য এই মেটাবেস সম্পত্তিটি ব্যবহৃত হয়।

আরও তথ্যের জন্য, দেখুন:

পৃষ্ঠাটি প্রদর্শিত হয়নি কারণ অনুরোধের সত্তাটি অনেক বড়। iis7


1
এসএসএল এবং 'আপলোডআডে হেডসাইজ' সম্পর্কে আপনার সন্ধানটি খুব ভাল! .. তবে আমি এটিকে সর্বোচ্চ মান হিসাবে সেট করার পরামর্শ দিচ্ছি না
শিখর

1

অন্য কারও জন্য যে কোনও আইআইএস ডাব্লুসিএফ ত্রুটি 413 খুঁজছেন তাদের জন্য: বৃহত্তর সত্তাকে অনুরোধ করুন এবং শেয়ারপয়েন্টে ডাব্লুসিএফ পরিষেবা ব্যবহার করুন, এটি আপনার জন্য তথ্য। অ্যাপ্লিকেশন হোস্ট এবং ওয়েবকনফাইগের সেটিংসগুলি অন্য সাইট / পোস্টগুলিতে প্রস্তাবিত যে মাল্টিপলবেস অ্যাড্রেসব্যাসিকহ্যাট্পবাইন্ডিং সার্ভিসহোস্টফ্যাক্টরি ব্যবহার করে শেয়ারপয়েন্টে কাজ করে না। আপনি এসপিওয়েবসওয়ার্স.সন্টেন্ট পরিষেবা পেতে এসপি পাওয়ারশেল ব্যবহার করতে পারেন, একটি নতুন এসপিডাব্লুভিভিসিটিংস অবজেক্ট তৈরি করতে এবং আপনার সেবার জন্য উপরের মতো সেটিংস আপডেট করতে পারেন (সেগুলির অস্তিত্ব থাকবে না)। সেটিংস তৈরি এবং যুক্ত করার সময় কেবলমাত্র পরিষেবার নামটি (যেমন [আপনার সার্ভিস.এসভিসি]) ব্যবহার করতে ভুলবেন না। আরও তথ্যের জন্য এই সাইটটি দেখুন https://robertsep.wordpress.com/2010/12/21/set-maximum-upload-filesize-sharePoint-wcf-service


1

আমার ক্ষেত্রে আমাকে বিজটকের প্রাপ্ত অবস্থানের "সর্বোচ্চ প্রাপ্ত বার্তার আকার" বাড়াতে হয়েছিল। এটিরও একটি ডিফল্ট মান 64৪ কে এবং তাই প্রতিটি বার্তাই আমার ওয়েবকনফাইজে যা আমি কনফিগার করেছি তা বিবেচনা না করেই বিজটালক বাউন্স করেছিল every


1

একই ডাব্লুসিএফ চ্যানেল / ক্লায়েন্টে বৃহত সামগ্রীর সাথে অনুরোধের ঠিক আগে আমি একটি ডামি কল (উদাহরণস্বরূপ ইসলাইভ সত্য প্রত্যাবর্তন) সম্পাদন করে এটি সমাধান করতে সক্ষম হয়েছি। স্পষ্টতই প্রথম কলটিতে এসএসএল আলোচনা করা হয়। তাই আপলোডডহেডসাইজ বাড়ানোর দরকার নেই।


0

ইস্যুটির জন্য রিমোট সার্ভারটি একটি অপ্রত্যাশিত প্রতিক্রিয়া ফিরিয়েছিল: (413) WCF- এ রেফুলের সাথে সত্তা অত্যধিক বৃহত্তর অনুরোধ করুন

আমার ব্যাখ্যা কনফিগারেশন দেখুন

</client>
<serviceHostingEnvironment multipleSiteBindingsEnabled="false" aspNetCompatibilityEnabled="true"/>

<bindings>

   <!-- this for restfull service -->
  <webHttpBinding>
    <binding name="RestfullwebHttpBinding"
      maxBufferPoolSize="2147483647"
      maxReceivedMessageSize="2147483647"
      maxBufferSize="2147483647" transferMode="Streamed">

      <readerQuotas 
        maxDepth="2147483647" 
        maxStringContentLength="2147483647"
        maxArrayLength="2147483647" 
        maxBytesPerRead="2147483647" /> 

    </binding>
  </webHttpBinding>
  <!-- end -->

   <!-- this for Soap v.2 -->
  <wsHttpBinding>
    <binding name="wsBinding1" maxReceivedMessageSize="2147483647" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="2147483647" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>
      <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
      <!--UsernameToken over Transport Security-->
      <security mode="TransportWithMessageCredential">
        <message clientCredentialType="UserName" establishSecurityContext="true"/>
      </security>
    </binding>
  </wsHttpBinding>
   <!-- this for restfull service -->

   <!-- this for Soap v.1 -->
  <basicHttpBinding>
    <binding name="basicBinding1" maxReceivedMessageSize="2147483647" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="2147483647" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false" transferMode="Streamed">
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>
      <security mode="None"/>
    </binding>
  </basicHttpBinding>
</bindings> 
<!-- end -->

<services>
  <clear/>

  <service name="ING.IWCFService.CitisecHashTransfer"  >
    <endpoint address="http://localhost:8099/CitisecHashTransfer.svc"
                  behaviorConfiguration="RestfullEndpointBehavior"
                  binding="webHttpBinding"
                  bindingConfiguration="RestfullwebHttpBinding"
                  name="ICitisecHashTransferBasicHttpBinding"
                  contract="ING.IWCFService.ICitisecHashTransfer" />
  </service>

</services>
<behaviors>
  <serviceBehaviors>
    <behavior name="ServiceBehavior">
      <serviceMetadata httpsGetEnabled="true"/>
      <serviceDebug includeExceptionDetailInFaults="true"/>
      <dataContractSerializer maxItemsInObjectGraph="2147483647"/>

      <serviceCredentials>
        <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="ING.IWCFService.IWCFServiceValidator, ING.IWCFService"/>
      </serviceCredentials>
      <serviceSecurityAudit auditLogLocation="Application" serviceAuthorizationAuditLevel="SuccessOrFailure" messageAuthenticationAuditLevel="SuccessOrFailure"/>
      <serviceThrottling maxConcurrentCalls="1000" maxConcurrentSessions="100" maxConcurrentInstances="1000"/>

    </behavior>
    <behavior>
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
      <serviceDebug includeExceptionDetailInFaults="true"/>
      <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
    </behavior>
  </serviceBehaviors>
  <endpointBehaviors>
    <behavior name="EndpointBehavior">
      <dataContractSerializer maxItemsInObjectGraph="2147483647" />
    </behavior> 
    <behavior name="RestfullEndpointBehavior">
      <dataContractSerializer maxItemsInObjectGraph="2147483647"  />
      <webHttp/>
    </behavior> 
  </endpointBehaviors>
</behaviors>


0

আমার ক্ষেত্রে, আমি এই ত্রুটি বার্তাটি পাচ্ছিলাম কারণ আমাকে পরিষেবাটির নাম স্থান পরিবর্তন করা হয়েছিল এবং পরিষেবা ট্যাগটি পুরানো নেমস্পেসের দিকে নির্দেশ করা হয়েছিল। আমি নেমস্পেস এবং ত্রুটিটি লোপ পেয়ে রিফ্রেশ করেছি:

<services>
  <service name="My.Namespace.ServiceName"> <!-- Updated name -->
    <endpoint address="" 
              binding="wsHttpBinding" 
              bindingConfiguration="MyBindingConfiguratioName" 
              contract="My.Namespace.Interface" <!-- Updated contract -->
    />
  </service>
</services>

0

ভিজ্যুয়াল স্টুডিও 2017 এর সাথে আইআইএস এক্সপ্রেসে অনুরূপ ত্রুটি পেয়েছে।

এইচটিটিপি ত্রুটি 413.0 - সত্তা খুব বড় অনুরোধ

পৃষ্ঠাটি প্রদর্শিত হয়নি কারণ অনুরোধের সত্তাটি অনেক বড়।

সম্ভাব্য কারণসমূহ:

  • ওয়েব সার্ভার অনুরোধটির পরিষেবাটি প্রত্যাখ্যান করছে কারণ অনুরোধের সত্তাটি অনেক বড়।

  • ওয়েব সার্ভার অনুরোধটি পরিষেবা করতে পারে না কারণ এটি ক্লায়েন্ট শংসাপত্রের সাথে আলোচনার চেষ্টা করছে তবে অনুরোধের সত্তাটি অনেক বড়।

  • অনুরোধ ইউআরএল বা ইউআরএলটিতে শারীরিক ম্যাপিং (অর্থাত্ ইউআরএলের সামগ্রীতে ফিজিকাল ফাইল সিস্টেমের পথ) খুব দীর্ঘ।

আপনি যে জিনিসগুলি চেষ্টা করতে পারেন:

  • অনুরোধটি বৈধ কিনা তা যাচাই করুন।

  • ক্লায়েন্ট শংসাপত্র ব্যবহার করে, চেষ্টা করুন:

    • System.webServer/serverRuntime@uploadReadAheadSize বাড়ছে

    • প্রাথমিক এসএসএল হ্যান্ডশেকের অংশ হিসাবে ক্লায়েন্টের শংসাপত্রগুলির জন্য আলোচনার জন্য আপনার এসএসএল এন্ডপয়েন্টটি কনফিগার করুন। (netsh http যোগ করুন sslcert ... ক্লায়েন্টার্সটনেগোটিয়েশন = সক্ষম) .vs \ config \ applicationhost.config

সম্পাদনা করে এটি সমাধান করুন \.vs\config\applicationhost.config। সুইচ serverRuntimeথেকে Denyথেকে Allowভালো:

<section name="serverRuntime" overrideModeDefault="Allow" />

যদি এই মানটি সম্পাদনা না করা হয়, আপনি সেটিংস করার সময় এই জাতীয় ত্রুটি পাবেন uploadReadAheadSize:

HTTP ত্রুটি 500.19 - অভ্যন্তরীণ সার্ভার ত্রুটি

অনুরোধ করা পৃষ্ঠাটি অ্যাক্সেস করা যাবে না কারণ পৃষ্ঠার জন্য সম্পর্কিত কনফিগারেশন ডেটা অবৈধ।

এই কনফিগারেশন বিভাগটি এই পথে ব্যবহার করা যাবে না। বিভাগটি পিতামাতার স্তরে লক হয়ে গেলে এটি ঘটে। লক করা হয় ডিফল্টরূপে (ওভাররাইডমডেফাল্ট = "অস্বীকার করুন)" বা ওভাররাইডমোড = "অস্বীকার করুন" বা লিগ্যাসি অনুমতি ওভাররাইড = "মিথ্যা" দিয়ে কোনও অবস্থান ট্যাগ দ্বারা স্পষ্টত সেট করা আছে।

তারপরে Web.configনিম্নলিখিত মানগুলির সাথে সম্পাদনা করুন :

<system.webServer>
  <serverRuntime uploadReadAheadSize="10485760" />
...

আপনি যদি ভোট দেন, দয়া করে কেন বলুন। অন্যথায় উত্তরগুলি উন্নত করা খুব কঠিন।
ওগ্লাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.