কেন S3 ওয়েবসাইট পুনর্নির্দেশের অবস্থান ক্লাউডফ্রন্ট অনুসরণ করে না?


18

আমাজন এস 3 তে আমার একটি হোস্ট করা ওয়েবসাইট রয়েছে। এটি ওয়ার্ডপ্রেসে হোস্ট করা একটি পুরানো ওয়েবসাইটের নতুন সংস্করণ।

Website Redirect Locationপুরাতন অবস্থানটি পরিচালনা করতে এবং নতুন ওয়েবসাইটের পৃষ্ঠাগুলিতে পুনর্নির্দেশের জন্য আমি মেটাডেটা সহ কয়েকটি ফাইল সেট আপ করেছি।

উদাহরণস্বরূপ: আমার ছিল http://www.mysite.com/solutionযে আমি পুনঃনির্দেশ করতে চাই http://mysite.s3-website-us-east-1.amazonaws.com/product.htmlতাই আমি solutionআমার বালতির ভিতরে একটি খালি ফাইল তৈরি করেছি সঠিক মেটাডেটা সহ:

Website Redirect Location= /product.html

এস 3 পুনর্নির্দেশ মেটাডেটা 301 Moved Permanentlyএসইও-র জন্য দুর্দান্ত is সরাসরি এস 3 ডোমেন থেকে URL টি অ্যাক্সেস করার সময় এটি দুর্দান্ত কাজ করে।

আমি ওয়েবসাইট বাকেটের ভিত্তিতে ক্লাউডফ্রন্ট বিতরণও সেট আপ করেছি। এবং যখন আমি আমার বিতরণের মাধ্যমে অ্যাক্সেস করার চেষ্টা করি তখন পুনঃনির্দেশ কাজ করে না, অর্থাত:

http://xxxx123.cloudfront.net/solution পুনর্নির্দেশ না করে পরিবর্তে খালি ফাইলটি ডাউনলোড করে।

সুতরাং আমার প্রশ্নটি কীভাবে ক্লাউডফ্রন্ট বিতরণের মাধ্যমে পুনঃনির্দেশটি রাখা যায়? বা এসইওর অবনতি না করে পুনঃনির্দেশটি পরিচালনা করতে কীভাবে কোনও ধারণা?

ধন্যবাদ

উত্তর:


47

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

আমি বালতি হোস্টনামের পরিবর্তে এস 3 স্ট্যাটিক ওয়েবসাইটের হোস্টনেমকে নির্দেশিত কাস্টম উত্স সহ একটি ক্লাউডফ্রন্ট বিতরণ তৈরি করেছি। ওপি-র ক্ষেত্রে, পছন্দসই উত্স হবে।

mysite.s3-website-us-east-1.amazonaws.com

উত্স হিসাবে বালতিটি ব্যবহার করে একটি ক্লাউডফ্রন্ট বিতরণ হিট করা ঠিক কাজ করে না কারণ বালতিটি আসলে পুনর্নির্দেশগুলি সরবরাহ করে না। এটি কেবল ফাইল এবং স্টোরের মেটাডেটা সরবরাহ করে।

আশা করি এইটি কাজ করবে.


নোট করুন যে ক্লাউডফ্রন্ট অনুসরণের পরিবর্তে পুনর্নির্দেশ প্রতিক্রিয়াটিকে ক্যাশে করে। ফলস্বরূপ সংস্থানগুলির ডাউনলোডগুলি আপনি ক্লাউডফ্রন্টকে বাইপাসে পুনর্নির্দেশ করে।
tfischbach

2
butesuo - আমরা যদি এর জন্য আপনাকে একটি বিলিয়ন রেপ পয়েন্ট দিতে পারি, আমরা করব। তোমাকে অনেক ধন্যবাদ. আপনি সত্যিই দিনটি বাঁচিয়েছিলেন।
পাখিবিশেষ

এটি অনেক সাহায্য! এস 3-তে নতুন কারও জন্য উল্লেখযোগ্য: স্ট্যাটিক বালতি তৈরি করতে, আপনার বালতিতে যান এবং প্রোপার্টি ট্যাবটি দেখুন। স্ট্যাটিক ওয়েবসাইট হোস্টিং ক্লিক করুন। এটি আপনাকে সঠিক URL দেবে যা ফরওয়ার্ড করার অনুমতি দেবে :)
rick6

2

বিশ্লেষণ

নথিভুক্ত অনুরোধ এবং প্রতিক্রিয়া আচরণ, এবং কাস্টম উত্সগুলির জন্য সমর্থিত এইচটিটিপি স্থিতি কোড অনুসারে , অ্যামাজন ক্লাউডফ্রন্ট দুর্ভাগ্যবশত: পুনঃনির্দেশগুলি অনুসরণ করে না :

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

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

তদনুসারে আমি এই অনুমানের উদ্যোগ নিয়েছি যে আপনি এইচটিটিপি স্থিতি কোড 200 ওকে দিয়ে কোনও খালি ফাইল পাচ্ছেন না , বরং কোনও HTTP স্থিতি 301 স্থায়ীভাবে কোনও দেহ ছাড়াই সরানো হয়েছে - আপনি কি আসলে এটি কোনও ব্রাউজার দিয়ে পরীক্ষা করেছেন বা শেষ পর্যন্ত কেবল একটি কমান্ড লাইন সরঞ্জামের সাহায্যে? যেমন সিআরএল বা এইচটিটিপি ? আধুনিক সরঞ্জামগুলি পুনঃনির্দেশগুলি অনুসরণ করতে সাধারণত একটি স্পষ্ট পরামিতি প্রয়োজন, যাতে এটি সহজেই নজরে না যায়।

সম্ভাব্য সমাধান

যদি বিশ্লেষণটি সঠিক হিসাবে দেখা যায়, তবে পরিবর্তে ক্লাউডফ্রন্টকে স্পষ্টভাবে লক্ষ্য করতে আপনাকে পুনর্নির্দেশটি কনফিগার করতে হবে, আবার পুনঃনির্দেশগুলি দেখুন :

নিম্নলিখিতগুলির মধ্যে একটিতে অনুরোধগুলি পুনর্নির্দেশ করতে আপনি আপনার ওয়েব সার্ভারটি কনফিগার করতে পারেন:

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

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


আমি যখন ক্লাউলফ্রন্ট বিতরণটির মাধ্যমে পুনর্নির্দেশ করতে হবে এমন URL টি সিআরএল করব তখন আমার বোঝাটি হ'ল পুনঃনির্দেশটি HTTP/1.0 200 OK Content-Type: application/octet-stream Content-Length: 0 এস 3 দ্বারা পরিচালিত হয় এবং এই ক্ষেত্রে ফাইলটি ক্লাউডফ্রন্ট দ্বারা হোস্ট করা হয় এবং এটি এস 3 হিসাবে পুনঃনির্দেশ শিরোনামগুলি সেট করে না care ফাইলটির ওয়েব সার্ভার হ'ল আমি মেটাডেটা বাদে পুনঃনির্দেশ ম্যাপ করতে পারি না।
ইয়ানিক চেইজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.