مشكلة تحميل الصورة الرمزية (أوبونتو)

حسناً…

المشكلة الأولى - كان مسار الصورة الرمزية هو عنوان بروتوكول الإنترنت 127.0.0.1 بينما كانت جميع عناوين URL الأخرى هي localhost - هل يمكن أن يحدث ذلك فرقاً؟ لقد قمت بتغييره على أي حال، عن طريق الدخول إلى rails c (لأنه لم يبدُ أنه يلتقط المعلمات من سطر الأوامر لبدء Discourse (FORCE_HOST=localhost وما إلى ذلك)، كانت فارغة في rails).

rails c
SiteSetting.force_hostname = "localhost"
SiteSetting.port = 4200
exit

بعد ذلك، أصبحت مسارات الصور الرمزية localhost وليست عنوان بروتوكول الإنترنت بعد إعادة تشغيل الموقع. ومع ذلك، لم تكن الصور الرمزية تعمل بعد.

مزيد من التحقيق في السجلات بمجرد قيامي باستيراد صورة رمزية:

tail -n 200 log/development.log

كشف:

convert: no decode delegate for this image format jpeg:/home/bob/discourse/public/uploads/default/original/1X/92bb0d46e6a4b8a1333505b9d2da59a5ed1721ec.jpeg[0]' @ error/constitute.c/ReadImage/752.\nconvert: no images defined jpeg:/tmp/discourse-thumbnail20260202-4096-qjyo93.jpeg' @ error/deprecate.c/ConvertImageCommand/3368.\n"

وبعد بعض البحث اكتشفت أن السبب كان أنني قمت بتثبيت Imagemagick ولكن ليس تفويضات jpeg أولاً. قمت بإلغاء تثبيت Imagemagick، وتثبيت تفويضات jpeg (وغيرها):

sudo apt install -y libpng-dev libtiff-dev libwebp-dev libheif-dev liblcms2-dev zlib1g-dev libjpeg-turbo8 libjpeg-turbo8-dev

ثم أعدت تثبيت Imagemagick من المصدر:

./configure \
  --prefix=/usr/local \
  --with-modules \
  --disable-static \
  --with-quantum-depth=16 \
  --with-jpeg=yes \
  --with-png=yes \
  --with-tiff=yes \
  --with-webp=yes \
  --with-heic=yes \
  --with-lcms=yes

make -j"$(nproc)"
sudo make install
sudo ldconfig

أعدت تشغيل خادم Discourse وعملت الصور الرمزية على الفور :slight_smile:

أنا منزعج من نفسي لأنني ركزت على مراجع عناوين URL الخاصة بـ ip/localhost بدلاً من التحقق من الأساسيات… ولكن ها نحن ذا، تعلمت الكثير في اليومين الماضيين والآن يعمل كل شيء :slight_smile: