ملخص:
توفر هذه المقالة فكرة لاستخدام البرنامج النصي ASPPHP لتنفيذ نسخة احتياطية من ملف الموقع ، والتي يمكن أن تحقق النسخ الاحتياطي اليومي للملفات المحددة.
غالبًا ما يكون للمواقع الشخصية تحكمًا ضئيلًا جدًا على المضيف على المضيفين الظاهريين ، لذلك لا يمكنهم استخدام جداول المهام لتحقيق نسخ احتياطية محددة. نحن بحاجة إلى تغيير تفكيرنا لتحقيق نسخ احتياطية تلقائية مماثلة.
يمكننا استخدام وصول المستخدمين إلى موقع الويب لتحقيق النسخ الاحتياطي اليومي للملفات المحددة.
الفكرة الأساسية هي: يزور المستخدم موقع الويب → يقرأ آخر تاريخ احتياطي ، يقرأ التاريخ الحالي ثم يقارن. إذا كان التاريخان غير متناسقين ، فسيتم استدعاء برنامج النسخ الاحتياطي لتحقيق النسخ الاحتياطي للملف المحدد. بعد اكتمال النسخ الاحتياطي ، سيتم كتابة علامة تاريخ جديدة. في هذا الوقت ، يزور المستخدم موقع الويب مرة أخرى ، والتاريخ هو الأحدث بالفعل ، وسيتم تخطي برنامج النسخ الاحتياطي وسيتم تنفيذ البرامج الأخرى.
قم بتحليل هذه الفكرة: سيتم بدء برنامج النسخ الاحتياطي عندما يزور المستخدم الأول موقع الويب كل يوم ، والذي يمكن أن يحقق تأثير النسخ الاحتياطي حسب اليوم. ومع ذلك ، إذا لم يكن هناك وصول مستخدم في هذا اليوم ، فلن يكون هناك نسخة احتياطية. لا يهم هذا كثيرًا ، لأنه إذا لم يصل أي مستخدم إلى موقع الويب ، فلن يتغير محتوى الموقع كثيرًا. لذلك ، يمكن تجاهل هذا الموقف.
تجدر الإشارة إلى أنه قد تكون هناك حالات يزور فيها شخصان الموقع في نفس الوقت وبدء برنامج النسخ الاحتياطي في نفس الوقت ، مما قد يكتب محتوى النسخ الاحتياطي. في هذا الصدد ، يمكننا إضافة بيانات الحكم إلى البرنامج ، ولا يمكننا الكتابة فوق الملف إذا كان موجودًا بالفعل.
إذا كانت أسماء الملفات للملفين المراد احتياطيها هي نفسها ، فسوف يتسبب ذلك أيضًا في الكتابة فوقها. نحن نفترض أن الملفات كلها مختلفة.
هناك مسألة مهمة أخرى وهي أن تنسيقات الفترة التي يجب استخدامها في برنامج النسخ الاحتياطي هي 4 سنوات ، وشهرين وأيام من رقمين ، ويجب تعويض الأصفار للأرقام غير الكافية. على سبيل المثال: 2006-05-31 فقط بهذه الطريقة يمكننا تحقيق مقارنة أحجام التاريخ. في ASP ، يمكننا استخدام برنامج صغير لتنفيذه. يوجد بالفعل هذا التنسيق في PHP.
يتم شرح بنية البرنامج بالتفصيل أدناه ، مع أخذ ASP كمثال.
=== bak_set.asp ===