الخطأ 503 هو قول الخادم «ليس الآن». وهو الوحيد من فئة 5xx الذي يكون أحيانًا صحيحًا: وضع الصيانة يردّ 503 عن قصد، ومحرّك البحث الذي يقرؤه يعود لاحقًا بدل أن يُسقط الصفحة.
أهو مقصود؟
- نظام إدارة محتوى تُرك في وضع الصيانة — فـWordPress يخلّف ملفّ
.maintenanceحين يفشل تحديثٌ في منتصفه. - أو حدُّ معدّلٍ يؤدّي عمله، وهو 503 مع ترويسة Retry-After.
- أو سكربت نشرٍ وضع الموقع خلف صفحة انتظار ولم يرفعها.
ls -la /path/to/site/.maintenance && rm /path/to/site/.maintenance
أم أن السعة نفدت؟
إن لم يكن شيءٌ مقصودًا، فلم تبقَ للخادم سعةٌ لقبول الطلب. اقرأ الحِمل أوّلًا، فالرقم يقول لك أيُّ مورد نفد.
uptime; free -m; df -h
- حِملٌ يفوق عدد أنويتك بكثير — عملٌ أكثر ممّا يحتمل المعالج.
- ولا ذاكرة حرّة تقريبًا مع استعمال التبديل — الجهاز يتخبّط وكل شيء بطيء.
- أو قرصٌ ممتلئ — لا شيء يقدر على الكتابة، وأغلب الخدمات تردّ 503 بدل أن تُتلف البيانات.
والقرص الممتلئ هو الأكثر شيوعًا والأقلّ اتّهامًا. افحصه أوّلًا: يكلّف أمرًا واحدًا وهو غالبًا الجواب كلّه.
ولا تحذف ملفّات السجلّ أبدًا لتحرير مساحة وخدمةٌ تكتب فيها — فالمساحة لا تعود حتى تُغلق العمليّة مِقبضها. اقطعها بدل ذلك:
: > /var/log/big.log