تم تطوير برنامج Z-Blog استنادًا إلى بيئة IIS+asp، ومن الناحية النظرية، لا يمكن تشغيله في بيئة Apache+php+MySQL، ومع ذلك، في بعض الأحيان، بسبب ظروف معينة، يلزم ترحيل Z-Blog مؤقتًا إلى منصة Apache ستصف هذه المقالة شكلاً محددًا من أشكال الهجرة.
تتمثل فكرة الترحيل في جعل كل مدونة Z ثابتة، واستخدام كود PHP لإعادة الاتصال بالعنوان الموجود على خادم ASP للجزء الديناميكي، ولا تزال قاعدة البيانات موضوعة على خادم ASP، باستخدام أسماء النطاقات المزدوجة. واستخدام أداة FTP لنقل العنوان على خادم ASP. انسخ ملف HTML إلى خادم PHP.
يحتاج نظام Z-Blog إلى استخدام "المكون الإضافي لإنشاء الصفحة الرئيسية الثابتة"، بحيث تقوم الصفحة الرئيسية وصفحات المقالات بتنفيذ ملفات HTML الثابتة، وتكون صفحات الفئات وصفحات العلامات ديناميكية في الأصل، وهو أمر يصعب تعديله في Z-Blog يحتاج كود المصدر إلى تعديل.
أسلوب التعديل هو إنشاء دليل قطة أولاً، ونسخ ملف catalog.asp في الدليل الجذر، وتغييره إلى default.asp، وتعديل مسار التضمين بالداخل.
بعد ذلك، قم بتعديل ملفات c_system_base.asp، وc_system_event.asp، وc_system_lib.asp في دليل FUNCTION، وابحث عن "catalog.asp" واستبدله بـ "cat/"، بحيث تقوم صفحة الكتالوج وصفحة الفئة باستدعاء دليل cat بدلاً من ملف أسب.
بعد ذلك، قم بإرسال كل ملفات HTML إلى مضيف Apache بالنسبة إلى دليل cat، قم بإنشاء ملف Index.php بالمحتوى التالي:
$qstring = isset($_SERVER["QUERY_STRING"]) $_SERVER["QUERY_STRING"] : "";
$url = " http://www.williamlong.info/cat/؟".$qstring ;
$file=file_get_contents($url);
صدى ملف $؛
?>
بهذه الطريقة، ستقوم الاستدعاءات إلى صفحة الدليل وصفحة الفئة تلقائيًا بالتقاط الملفات الموجودة على خادم ASP الأصلي.
أخيرًا، قم بتحرير ملف .htaccess الموجود على خادم Apache بالمحتوى التالي:
RewriteEngineOn
إعادة كتابة قاعدة/
قاعدة إعادة الكتابة ^upload/(.*)$ http://www.williamlong.info/upload/$1 [R=301,L]
قاعدة إعادة الكتابة ^download/(.*)$ http://www.williamlong.info/download/$1 [R=301,L]
إعادة كتابة القاعدة ^function/(.*)$ http://www.williamlong.info/function/$1 [R=301,L,QSA]
بعد هذه المعالجة، يمكن أيضًا تصفح المدونة التي تم إنشاؤها بواسطة Z-Blog في بيئة Apache.
ومع ذلك، لا تزال هناك بعض المشكلات، بما في ذلك: لا يمكن استخدام وظيفة التعليق (استخدام مكون إضافي آخر وحده بالكاد يدعم التعليقات)، ولا يمكن عرض المحتوى الذي تم تحميله ديناميكيًا في الشريط الجانبي، ولا يمكن حساب عدد مشاهدات المقالة، المكون الإضافي للتقييم غير صالح، والتحديثات أكثر إزعاجًا.
الطريقة الحالية لتحديث المدونة هي تعديل ملف المضيفين، وتوجيه اسم مجال Z-Blog إلى خادم ASP الأصلي مرة أخرى، وإضافة المقالات، ثم FTP إلى خادم Apache. في الأصل، فكرت في تثبيت Dropbox على كلا الخادمين في نفس الوقت لتحقيق المزامنة، ولكن اكتشف لاحقًا أن بعض المضيفين الظاهريين الأجانب بدأوا في حظر تشغيل Dropbox على المضيف. ستكتشف أنظمتهم تلقائيًا عملية Dropbox وترسل رسائل بريد إلكتروني لتحذير المستخدمين، قائلين إن تشغيل هذا البرنامج ينتهك سياساتهم ويتطلب ذلك سيتم إيقاف العملية، لذلك يمكنهم فقط التفكير في استخدام طريقة FTP التلقائية لتحقيق المزامنة.