هل هناك طريقة index.html وظائف مع المحتوى استضافتها على S3 ؟
-
09-06-2019 - |
سؤال
هل هناك طريقة لجعل S3 الافتراضي إلى index.html الصفحة ؟ E. g.:أمنياتي كائن القائمة:
/index.html
/favicon.ico
/images/logo.gif
دعوة إلى www.example.com/index.html يعمل كبيرة!لكن إن اتصل www.example.com/ لكنا إما أن تحصل على 403 أو بقية وجوه إدراج مستند XML اعتمادا على كيفية دلو مستوى ACL تم تكوينه.
إذن السؤال:هل هناك طريقة index.html وظائف مع المحتوى استضافتها على S3 ؟
المحلول
الأمازون S3 يدعم الآن فهرس الوثائق
على مؤشر الوثيقة بالنسبة دلو يمكن تعيين إلى شيء من هذا القبيل index.html
.عند الوصول إلى جذر الموقع أو شبه دليل يحتوي على وثيقة من هذا الاسم أن الوثيقة التي تم إرجاعها.
فمن السهل للغاية أن تفعل استخدام أوس cli:
aws s3 website $MY_BUCKET_NAME --index-document index.html
يمكنك تعيين مؤشر الوثيقة من AWS إدارة وحدة التحكم:
نصائح أخرى
الناس لا تزال تكافح ضد هذا بعد 3 سنوات ، اسمحوا لي أن أضيف بعض المعلومات الهامة:
عنوان URL لموقع الويب الخاص بك (والتي عليك أن نقطة DNS) لا
<bucket_name>.s3-us-west-2.amazonaws.com
, ولكن
<bucket_name>.s3-website-us-west-2.amazonaws.com
.
إذا كنت تستخدم لأول مرة, فهو لن يعمل على النحو المنشود ، لا يهم كم كنت التكوين مؤشر الوثيقة.
معين سبيل المثال ، ينظر:
- http://www-example-com.s3.amazonaws.com/index.html يعمل.
- http://www-example-com.s3.amazonaws.com/ فشل مع
AccessDenied
. - http://www-example-com.s3-website-us-west-2.amazonaws.com/ يعمل!
للحصول على الحقيقي الخاص بك عنوان الموقع ، S3 وحدة التحكم بالإدارة, حدد الهدف الدلو ، ثم Properties
, ثم Static Website Hosting
.فإنه سيتم عرض عنوان URL لموقع الويب الذي سيتم العمل.
يمكنك بسهولة حل ذلك عن طريق الأمازون CloudFront الرابط.في الأمازون CloudFront يمكنك تعديل الكائن الجذر.يمكنك مدير تحميل هنا:m1.mycloudbuddy.com/downloads.html.
منذ وقت طويل, هذا السؤال الذي طرح ، الأمازون S3 تغيير واجهة.وأود أن الإجابة مع تحديث الصور.
نحن بحاجة إلى تمكين 'ثابت استضافة' S3 لخدمة الاستضافة.- اذهب إلى خصائص -> انقر على ساكنة استضافة المواقع -> اختر 'استخدام هذا دلو لاستضافة موقع على شبكة الإنترنت' - إدخال مؤشر الوثيقة (index.html بشكل افتراضي) ، خطأ وثيقة قواعد إعادة توجيه ، إن وجدت.
كما أجاب في https://stackoverflow.com/a/24377823/3086531, رابط الاستضافة سيكون
أود أن أقترح القراءة هذا الموضوع من 2006 (على الأمازون خدمات الويب للمطورين الاتصال).يبدو أنه ليس هناك حل سهل هذا.
نعم.باستخدام أوس Cloudfront يتيح لك تعيين الملف الافتراضي.
يمكنك أن تفعل ذلك باستخدام dns webforwards و الحجب.فقط إلى الأمام على المسار الكامل index.html
www.example.com إلى الأمام http://www.example.com.s3.amazonaws.com وتأكد من عباءة الإخراج.