صفحة 404 الافتراضية صفحة بيضاء عليها اسم الخادم وإصداره. تُضيّع الزائر، وتُسلّم كلَّ من يمسح موقعك رقم إصدار دقيقًا يبحث عنه. أمّا صفحتك أنت فتُبقي الناس في الموقع ولا تقول ما لا ينبغي.

Nginx

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;

location = /404.html { root /var/www/site/public; internal; }
location = /50x.html { root /var/www/site/public; internal; }

server_tokens off;

الكلمة internal تعني أن الصفحة لا تُبلَغ إلّا بوصفها خطأً، لا بكتابة عنوانها. والتعليمة server_tokens off تحذف الإصدار من كل ردّ ومن كل صفحة خطأ.

وApache وLiteSpeed

ErrorDocument 404 /404.html
ErrorDocument 500 /50x.html
ServerSignature Off

ماذا ينبغي أن تحتوي الصفحة

  • جملة صريحة تقول ما حدث، بلا أثر تنفيذ.
  • ورابطًا إلى الصفحة الرئيسة وإلى البحث.
  • والترويسة والتذييل نفسهما كبقيّة الموقع، كي لا تبدو طريقًا مسدودًا.
  • ولا شيء يُحمَّل من مسار قد يكون معطوبًا هو الآخر — ضع CSS داخل الصفحة إن استطعت.
وصفحة 404 يجب أن تردّ بالحالة 404 لا 200. فـ«404 اللطيفة» — صفحة ودودة بحالة نجاح — تجعل كل عنوان مكتوب خطأً يبدو محتوى حقيقيًّا، ومحرّكات البحث تفهرسها كلّها.
curl -sSI https://yourdomain.com/no-such-page | head -1
# HTTP/2 404

وصفحة 500 مختلفة

تُعرَض حين يكون التطبيق معطوبًا، فلا يجوز أن تعتمد على التطبيق. أبقِها ملفًّا ثابتًا يقدر خادم الويب على تقديمه وحده.