رفتن به محتوا

ارتقا از XOOPS 2.5 به 2.7

:::احتیاط[ابتدا پشتیبان گیری کنید] همیشه قبل از ارتقا از پایگاه داده و فایل های خود نسخه پشتیبان تهیه کنید. بدون استثنا. :::

  • PHP 8.2+ مورد نیاز - PHP 7.x دیگر پشتیبانی نمی شود
  • وابستگی های مدیریت شده توسط آهنگساز - کتابخانه های اصلی مدیریت شده از طریق composer.json
  • ** بارگذاری خودکار PSR-4 ** - کلاس های ماژول می توانند از فضای نام استفاده کنند
  • ** XoopsObject بهبود یافته** — ایمنی نوع جدید getVar()، منسوخ obj2Array()
  • ادمین بوت استرپ 5 - پنل مدیریت با بوت استرپ 5 بازسازی شده است
  • PHP 8.2+ در سرور شما موجود است
  • پشتیبان گیری کامل از پایگاه داده (mysqldump -u user -p xoops_db > backup.sql)
  • پشتیبان گیری کامل فایل نصب شما
  • لیست ماژول های نصب شده و نسخه های آنها
  • از تم سفارشی به طور جداگانه نسخه پشتیبان تهیه شده است

1. سایت را در حالت نگهداری قرار دهید

Section titled “1. سایت را در حالت نگهداری قرار دهید”
// mainfile.php — add temporarily
define('XOOPS_MAINTENANCE', true);
Terminal window
wget https://github.com/XOOPS/XoopsCore27/releases/latest/download/xoops-2.7.x.zip
unzip xoops-2.7.x.zip

3. فایل های اصلی را جایگزین کنید

Section titled “3. فایل های اصلی را جایگزین کنید”

آپلود فایل های جدید، به استثنای:

  • uploads/ - فایل های آپلود شده شما
  • xoops_data/ - پیکربندی شما
  • modules/ - ماژول های نصب شده شما
  • themes/ - تم های شما
  • mainfile.php - پیکربندی سایت شما
Terminal window
rsync -av --exclude='uploads/' --exclude='xoops_data/' \
--exclude='modules/' --exclude='themes/' --exclude='mainfile.php' \
xoops-2.7/ /var/www/html/

4. اسکریپت ارتقاء را اجرا کنید

Section titled “4. اسکریپت ارتقاء را اجرا کنید”

در مرورگر خود به https://yourdomain.com/upgrade/ بروید. جادوگر ارتقاء، مهاجرت های پایگاه داده را اعمال می کند.

5. ماژول ها را به روز کنید

Section titled “5. ماژول ها را به روز کنید”

ماژول های XOOPS 2.7 باید با PHP 8.2 سازگار باشند. Module Ecosystem را برای نسخه های به روز بررسی کنید.

در Admin → Modules، روی Update برای هر ماژول نصب شده کلیک کنید.

6. حالت تعمیر و نگهداری را حذف کرده و تست کنید

Section titled “6. حالت تعمیر و نگهداری را حذف کرده و تست کنید”

خط XOOPS_MAINTENANCE را از mainfile.php حذف کنید و بررسی کنید که همه صفحات به درستی بارگیری شوند.

خطاهای “کلاس پیدا نشد” بعد از ارتقا

  • composer dump-autoload را در ریشه XOOPS اجرا کنید
  • پوشه xoops_data/caches/ را پاک کنید

ماژول بعد از به روز رسانی خراب شد

  • نسخه های GitHub ماژول را برای نسخه سازگار با 2.7 بررسی کنید
  • ممکن است ماژول به تغییرات کد برای PHP 8.2 نیاز داشته باشد (توابع منسوخ شده، خصوصیات تایپ شده)

سی اس اس پنل مدیریت خراب است

  • کش مرورگر خود را پاک کنید
  • مطمئن شوید که xoops_lib/ در حین آپلود فایل به طور کامل جایگزین شده است