كيف يمكنك منع التصفح المباشر للصورة في دليل شبكة الإنترنت؟

StackOverflow https://stackoverflow.com/questions/608111

  •  03-07-2019
  •  | 
  •  

سؤال

وأنا إنشاء موقع معرض الصورة التي لديك لتسجيل الدخول إلى الوصول. والموقع استخدام جلسات لتعقب المستخدمين وكلمات السر. تسجيل الدخول للمستخدمين سوف تكون قادرة على البحث عن الصور ونرى النتائج. ويفترض، وهذا يعني أنني سوف يكون وضع الصور في دليل الويب. كيف أحافظ على غير تسجيل في الناس من القدرة على تصفح مباشرة إلى صورة في هذا الدليل؟

وهذا هو القائم على PHP، مع الخلية.

هل كانت مفيدة؟

المحلول

والتحقق من وجود رأس المرجعية، وتتطلب أن يكون من موقع الويب الخاص بك. يمكنك أيضا التحقق من أن ملفات تعريف الارتباط الحصول على إرسالها إليك (انهم دخولك).

وأفضل رهان هو ثم وجود PHP جلب الصور من موقع خارج دير الويب الخاص بك.

وبالإضافة إلى ذلك، تحقق من سلسلة تعليق: استخدام mod_rewrite ويمكن أن تفعل كل هذا مباشرة من اباتشي

نصائح أخرى

ووضع الصور في مجلد الذي لا يمكن الوصول إليه من خلال رابط مباشر، ويكون البرنامج يخدم صورة مباشرة

لا تضع الصور في دليل للتصفح. والأفضل من ذلك، وتخزينها خارج الجاسوس الخاص بك. وضع نوع من معالج مخصص في المكان الذي سيتم تحميل الصورة المطلوبة وإرسالها إلى المستخدم، بعد أن تم التحقق من صحة المستخدم والتحقق منها. وهذا أيضا منع الساخنة ربط الصور الخاصة بك.

ووضع الصور في مجلد خارج موقع على شبكة الإنترنت، واستخدام صفحة وكيل لإرسال صورة إلى المتصفح. جعل صفحة التي تستخدم مثل رابط في علامة IMG الخاص بك، شيئا مثل:

وgetimage.php؟ ID = 8783475

في الصفحة التي تحقق أن يتم تسجيل المستخدم في، وتحديد من المعلمات ما صورة لإرسال. تعيين نوع محتوى الصفحة إلى النوع الذي يتطابق مع الصورة، على سبيل المثال "صورة / الحياة السياسية في فرنسا"، وقراءة ملف الصورة وإرسالها مباشرة إلى دفق استجابة.

إذا الصور الخاصة بك ليست كبيرة جدا، وهناك طريقة ذكية جدا لحمايتها من الوصول غير المصرح به. يمكنك أنت econding base64 في، نفس ترميز مرفق برنامج Outlook Express، ووضع التعليمات البرمجية داخل صفحة ASP التي تستخدم كائن الدورة. انظر الدروس ON ASP FOR MORE حول هذا الموضوع. عندما يصل المستخدم صفحة، يتحقق كود آسيا والمحيط الهادئ إذا تم autheticated المستخدم. إذا كان ليس هو السيناريو المقاطعات رمز صفحة، لا تصور الصورة. إذا تم مصادقة المستخدم البرامج النصية تحميل الصفحة بأكملها وإعادة بنائها base64 في في صورة مرئية. الخدعة هنا هو أن لم يكن لديك دليل مع صور واضحة في ذلك، ولكن يتم ترميز الصورة في صفحة HTML، بحيث يتم بناؤها على الطاير من قبل البرنامج النصي. منذ لم يكن لديك الصور في الدليل، لا أحد يستطيع أن يحاول أن نشير المتصفح مباشرة لهم، منذ تاي ببساطة لا وجود لها. يمكنك استخدام هذا الموقع لتشفير الصور:

http://www.motobit.com/util/base64-decoder- encoder.asp

وبعد ذلك عليك أن "الدعوة" الصورة في الكود باستخدام هذه العلامة:

وIMG SRC = "البيانات: صورة / gif، base64 في، ................................... ........... (هنا ضع التعليمات البرمجية التي تم الحصول عليها من الموقع أعلاه) ...............

ولقد انتهيت! الصور الخاصة بك لا يمكن الوصول إليها إذا لم يتم تسجيل المستخدم في.

لا تدع الناس الوصول إلى الدلائل صورة مباشرة.

واسمحوا برامجك معرض الصور الأمام صورة للمستخدم. تحقق من أوراق الحاجة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top