যখন কোনও ব্যবহারকারী লগ ইন না করে এবং লগইন প্রয়োজন এমন কোনও পৃষ্ঠায় অ্যাক্সেস করার চেষ্টা করে, লগইন পৃষ্ঠায় পুনর্নির্দেশের জন্য সঠিক HTTP স্থিতি কোডটি কী?
আমি জিজ্ঞাসা করছি কারণ ডাব্লু 3 সি দ্বারা নির্ধারিত 3xx প্রতিক্রিয়া কোডগুলির কোনওটিই প্রয়োজনীয়তার সাথে ফিট করে না বলে মনে হচ্ছে :
10.3.1 300 একাধিক পছন্দ
অনুরোধ করা সংস্থানটি উপস্থাপনের যে কোনও একটির সাথে মিলে যায়, যার প্রতিটি তার নিজস্ব নির্দিষ্ট অবস্থান এবং এজেন্ট-চালিত আলোচনার তথ্য (বিভাগ 12) সরবরাহ করা হচ্ছে যাতে ব্যবহারকারী (বা ব্যবহারকারী এজেন্ট) পছন্দসই উপস্থাপনা নির্বাচন করতে এবং এর পুনঃনির্দেশ করতে পারে এই অবস্থানটির জন্য অনুরোধ।
যদি এটি একটি প্রধান অনুরোধ না হয়ে থাকে তবে প্রতিক্রিয়াটিতে এমন একটি সত্তা অন্তর্ভুক্ত করা উচিত যা সংস্থান বৈশিষ্ট্য এবং অবস্থানের একটি তালিকা রয়েছে যা থেকে ব্যবহারকারী বা ব্যবহারকারী এজেন্ট সবচেয়ে উপযুক্তটিকে বেছে নিতে পারে। সত্তার ফর্ম্যাটটি সামগ্রী- প্রকারের শিরোনাম ক্ষেত্রে দেওয়া মিডিয়া টাইপের দ্বারা নির্দিষ্ট করা আছে। বিন্যাস এবং এর ক্ষমতা উপর নির্ভর করে
ব্যবহারকারী এজেন্ট, সবচেয়ে উপযুক্ত পছন্দের নির্বাচন স্বয়ংক্রিয়ভাবে সম্পাদন করা যেতে পারে। যাইহোক, এই স্পেসিফিকেশন যেমন স্বয়ংক্রিয় নির্বাচনের জন্য কোনও মান নির্ধারণ করে না।
যদি সার্ভারের কাছে উপস্থাপনের পছন্দ থাকে, তবে অবস্থানের ক্ষেত্রে সেই প্রতিনিধিত্বের জন্য নির্দিষ্ট ইউআরআই অন্তর্ভুক্ত করা উচিত; ব্যবহারকারী এজেন্টরা স্বয়ংক্রিয় পুনঃনির্দেশের জন্য অবস্থান ক্ষেত্রের মানটি ব্যবহার করতে পারে। অন্যথায় নির্দেশিত না হলে এই প্রতিক্রিয়া ক্যাশেযোগ্য।
10.3.2 301 স্থায়ীভাবে সরানো হয়েছে
অনুরোধ করা সংস্থানটিকে নতুন স্থায়ী ইউআরআই নির্ধারণ করা হয়েছে এবং এই সংস্থানটিতে ভবিষ্যতের কোনও রেফারেন্স প্রত্যাবর্তিত ইউআরআই ব্যবহার করতে হবে use লিঙ্ক সম্পাদনা ক্ষমতা সহ ক্লায়েন্টদের অনুরোধ-ইউআরআই-তে রেফারেন্সগুলি স্বয়ংক্রিয়ভাবে সার্ভারের দ্বারা ফিরে আসা এক বা একাধিক নতুন রেফারেন্সের সাথে পুনরায় লিঙ্ক করা উচিত where অন্যথায় নির্দেশিত না হলে এই প্রতিক্রিয়া ক্যাশেযোগ্য।
নতুন স্থায়ী ইউআরআই প্রতিক্রিয়া হিসাবে অবস্থান ক্ষেত্রের দ্বারা দেওয়া উচিত। অনুরোধের পদ্ধতিটি হেড না হলে প্রতিক্রিয়াটির সত্তায় নতুন ইউআরআই-তে হাইপারলিঙ্ক সহ একটি সংক্ষিপ্ত হাইপারটেক্সট নোট থাকতে হবে।
জিইটি বা হেড ব্যতীত অন্য কোনও অনুরোধের প্রতিক্রিয়াতে যদি 301 স্থিতি কোডটি পাওয়া যায়, তবে ব্যবহারকারী এজেন্টটি অনুরোধটি জারি করা শর্তে পরিবর্তিত হতে পারে, তবে এটি ব্যবহারকারী দ্বারা নিশ্চিত হওয়া না গেলে স্বয়ংক্রিয়ভাবে অনুরোধটি পুনঃনির্দেশ করা উচিত।
Note: When automatically redirecting a POST request after receiving a 301 status code, some existing HTTP/1.0 user agents will erroneously change it into a GET request.
10.3.3 302 পাওয়া গেছে
অনুরোধ করা সংস্থান অস্থায়ীভাবে আলাদা ইউআরআইয়ের অধীনে থাকে। যেহেতু উপলক্ষ্যে পুনঃনির্দেশটি পরিবর্তন করা যেতে পারে তাই ক্লায়েন্টটি ভবিষ্যতের অনুরোধগুলির জন্য অনুরোধ-ইউআরআই ব্যবহার চালিয়ে যাওয়া উচিত। এই প্রতিক্রিয়াটি কেবল ক্যাশেযোগ্য যদি ক্যাশে-নিয়ন্ত্রণ দ্বারা নির্দেশিত হয় বা হেডার ক্ষেত্রের মেয়াদ শেষ হয়।
অস্থায়ী ইউআরআই অবশ্যই প্রতিক্রিয়াতে অবস্থান ক্ষেত্রের দ্বারা দেওয়া উচিত। অনুরোধের পদ্ধতিটি হেড না হলে প্রতিক্রিয়াটির সত্তায় নতুন ইউআরআই-তে হাইপারলিঙ্ক সহ একটি সংক্ষিপ্ত হাইপারটেক্সট নোট থাকতে হবে।
জিইটি বা হেড ব্যতীত অন্য কোনও অনুরোধের প্রতিক্রিয়াতে যদি 302 স্থিতি কোডটি পাওয়া যায়, তবে ব্যবহারকারী এজেন্টটি অনুরোধটি জারি করা শর্তে পরিবর্তিত হতে পারে, তবে এটি ব্যবহারকারী দ্বারা নিশ্চিত হওয়া না গেলে স্বয়ংক্রিয়ভাবে অনুরোধটি পুনঃনির্দেশ করা উচিত।
Note: RFC 1945 and RFC 2068 specify that the client is not allowed to change the method on the redirected request. However, most existing user agent implementations treat 302 as if it
একটি 303 প্রতিক্রিয়া ছিল, মূল অনুরোধ পদ্ধতি নির্বিশেষে অবস্থান ক্ষেত্রের মানটিতে একটি জিইটি সম্পাদন করে। 303 এবং 307 স্ট্যাটাস কোডগুলি সার্ভারগুলির জন্য যুক্ত করা হয়েছে যা ক্লায়েন্টের কাছ থেকে কোন ধরণের প্রতিক্রিয়া প্রত্যাশা করা হয় তা নির্বিঘ্নে পরিষ্কার করতে চায়।
10.3.4 303 অন্যান্য দেখুন
অনুরোধের প্রতিক্রিয়াটি ভিন্ন ইউআরআইয়ের অধীনে পাওয়া যায় এবং সেই উত্সটিতে জিইটি পদ্ধতি ব্যবহার করে পুনরুদ্ধার করা উচিত। এই পদ্ধতিটি প্রাথমিকভাবে একটি পোস্ট-সক্রিয় স্ক্রিপ্টের আউটপুটটিকে ব্যবহারকারী এজেন্টকে একটি নির্বাচিত সংস্থায় পুনঃনির্দেশ করার অনুমতি দেওয়ার জন্য বিদ্যমান। নতুন ইউআরআই মূলত অনুরোধ করা সংস্থার বিকল্প বিকল্প নয়। 303 প্রতিক্রিয়া ক্যাশে করা উচিত নয়, তবে দ্বিতীয় (পুনঃনির্দেশিত) অনুরোধের প্রতিক্রিয়া ক্যাশেযোগ্য হতে পারে।
প্রতিক্রিয়া হিসাবে পৃথক ইউআরআই লোকেশন ক্ষেত্র দ্বারা দেওয়া উচিত। অনুরোধের পদ্ধতিটি হেড না হলে প্রতিক্রিয়াটির সত্তায় নতুন ইউআরআই-তে হাইপারলিঙ্ক সহ একটি সংক্ষিপ্ত হাইপারটেক্সট নোট থাকতে হবে।
Note: Many pre-HTTP/1.1 user agents do not understand the 303 status. When interoperability with such clients is a concern, the 302 status code may be used instead, since most user agents react to a 302 response as described here for 303.
10.3.5 304 সংশোধিত হয়নি
যদি ক্লায়েন্ট শর্তসাপেক্ষে জিইটি অনুরোধ সম্পাদন করে এবং অ্যাক্সেসের অনুমতি দেওয়া হয় তবে নথিতে পরিবর্তন করা হয়নি, সার্ভারটি এই স্থিতি কোডটির সাথে প্রতিক্রিয়া জানাবে। 304 টি প্রতিক্রিয়া মেসেজ-বডি না থাকা আবশ্যক এবং এটি শিরোনাম ক্ষেত্রগুলির পরে সর্বদা প্রথম খালি লাইন দ্বারা সমাপ্ত হয়।
প্রতিক্রিয়াটি নিম্নলিখিত শিরোনাম ক্ষেত্রগুলি অন্তর্ভুক্ত করতে হবে:
- Date, unless its omission is required by section 14.18.1 If a
ক্লকলেস অরিজিনাল সার্ভার এই নিয়মগুলি মান্য করে এবং প্রক্সিগুলি এবং ক্লায়েন্টরা কোনও উত্তর না পেয়ে প্রাপ্ত প্রতিক্রিয়ায় তাদের নিজস্ব তারিখ যুক্ত করে (ইতিমধ্যে [আরএফসি 2068], বিভাগ 14.19 দ্বারা নির্ধারিত হয়েছে), ক্যাশেগুলি সঠিকভাবে পরিচালনা করবে।
- ETag and/or Content-Location, if the header would have been sent in a 200 response to the same request - Expires, Cache-Control, and/or Vary, if the field-value might differ from that sent in any previous response for the same variant If the conditional GET used a strong cache validator (see
বিভাগ 13.3.3), প্রতিক্রিয়া অন্যান্য সত্তা-শিরোনাম অন্তর্ভুক্ত করা উচিত নয়। অন্যথায় (অর্থাত্, শর্তসাপেক্ষে জিইটি একটি দুর্বল যাচাইকারী ব্যবহার করেছেন), প্রতিক্রিয়াতে অন্য সত্তা-শিরোনামকে অন্তর্ভুক্ত করা উচিত নয়; এটি ক্যাশেড সত্তা সংস্থা এবং আপডেট হওয়া শিরোনামগুলির মধ্যে অসঙ্গতিগুলি রোধ করে।
যদি 304 টি প্রতিক্রিয়া কোনও সত্তাকে বর্তমানে ক্যাশে করা না নির্দেশ করে তবে ক্যাশে অবশ্যই প্রতিক্রিয়া উপেক্ষা করবে এবং শর্ত ছাড়াই অনুরোধটি পুনরাবৃত্তি করবে।
যদি কোনও ক্যাশে কোনও ক্যাশে এন্ট্রি আপডেট করতে 304 টি প্রাপ্ত প্রতিক্রিয়া ব্যবহার করে তবে ক্যাশে প্রতিক্রিয়াটিতে প্রদত্ত যে কোনও নতুন ক্ষেত্রের মান প্রতিফলিত করতে এন্ট্রিটি আপডেট করতে হবে।
10.3.6 305 প্রক্সি ব্যবহার করুন
অনুরোধ করা সংস্থানটি অবশ্যই ক্ষেত্রের প্রদত্ত প্রক্সি দিয়ে অ্যাক্সেস করতে হবে। অবস্থান ক্ষেত্র প্রক্সিটির ইউআরআই দেয়। প্রাপকের মাধ্যমে প্রাপক এই একক অনুরোধটির পুনরাবৃত্তি করবে বলে আশা করা হচ্ছে। 305 টি প্রতিক্রিয়া কেবল উত্স সার্ভার দ্বারা তৈরি করা আবশ্যক।
Note: RFC 2068 was not clear that 305 was intended to redirect a single request, and to be generated by origin servers only. Not observing these limitations has significant security consequences.
10.3.7 306 (অব্যবহৃত)
306 স্থিতি কোডটি নির্দিষ্টকরণের পূর্ববর্তী সংস্করণে ব্যবহৃত হয়েছিল, আর ব্যবহার করা হয় না এবং কোডটি সংরক্ষিত থাকে।
10.3.8 307 অস্থায়ী পুনঃনির্দেশ
অনুরোধ করা সংস্থান অস্থায়ীভাবে আলাদা ইউআরআইয়ের অধীনে থাকে। যেহেতু উপলক্ষে আমার পুনঃনির্দেশটি পরিবর্তন করা যেতে পারে তাই ক্লায়েন্টটি ভবিষ্যতের অনুরোধগুলির জন্য অনুরোধ-ইউআরআই ব্যবহার চালিয়ে যাওয়া উচিত। এই প্রতিক্রিয়াটি কেবল ক্যাশেযোগ্য যদি ক্যাশে-নিয়ন্ত্রণ দ্বারা নির্দেশিত হয় বা হেডার ক্ষেত্রের মেয়াদ শেষ হয়।
অস্থায়ী ইউআরআই অবশ্যই প্রতিক্রিয়াতে অবস্থান ক্ষেত্রের দ্বারা দেওয়া উচিত। অনুরোধের পদ্ধতিটি হেড না হলে, প্রতিক্রিয়ার সত্তাকে নতুন ইউআরআই-এর হাইপারলিঙ্ক সহ একটি সংক্ষিপ্ত হাইপারটেক্সট নোট থাকতে হবে, কারণ অনেক প্রাক-এইচটিটিপি / ১.১ ব্যবহারকারী এজেন্ট 307 স্থিতি বুঝতে পারে না। অতএব, নোটটিতে কোনও ব্যবহারকারীকে নতুন ইউআরআই-তে মূল অনুরোধটির পুনরাবৃত্তি করতে প্রয়োজনীয় তথ্য থাকতে হবে।
জিইটি বা হেড ব্যতীত অন্য কোনও অনুরোধের প্রতিক্রিয়াতে যদি 307 স্থিতি কোডটি পাওয়া যায়, তবে ব্যবহারকারী এজেন্টটি অনুরোধটি জারি করা শর্তে পরিবর্তিত হতে পারে, কারণ এটি ব্যবহারকারী কর্তৃক নিশ্চিত হওয়া না গেলে স্বয়ংক্রিয়ভাবে অনুরোধটি পুনঃনির্দেশ করা উচিত নয়।
আমি এখন জন্য 302 ব্যবহার করছি না হওয়া পর্যন্ত আমি খুঁজে সঠিক উত্তর।
আপডেট এবং উপসংহার:
এইচটিটিপি 302 ক্লায়েন্ট / ব্রাউজারগুলির সাথে সবচেয়ে ভাল সামঞ্জস্য রয়েছে বলে পরিচিত better