مواقع متعددة على خادم واحد
كيفية استضافة عشرات المواقع على VPS واحد: تخطيط الأدلة، وإعدادات ومستخدمون منفصلون، وشهادة مشتركة، وتقدير الحمل حسب المستوى.
آخر تحديث 23 أغسطس 2026
يمكن لعنوان IPv4 عام واحد أن يخدم أي عدد من النطاقات: يوجّه خادم الويب الطلبات عبر ترويسة Host. الحد ليس في العناوين، بل في ذاكرة وقرص مستواك.
التخطيط
احتفظ بقالب واحد، وإلا فلن تستطيع بعد ستة أشهر تمييز أي موقع يخص من:
/var/www/example.ru/public
/var/www/example.ru/logs
/var/www/shop.ru/public
/var/www/shop.ru/logs
احتفظ بملف إعدادات منفصل لكل موقع: /etc/nginx/sites-available/<domain>، ويُفعَّل عبر رابط رمزي في sites-enabled. عندئذٍ يعني تعطيل موقع حذف رابط رمزي واحد وإعادة التحميل، بدل البحث عن المقطع الصحيح في ملف مشترك.
الإعدادات
server {
listen 80;
server_name example.ru www.example.ru;
root /var/www/example.ru/public;
index index.html index.php;
access_log /var/www/example.ru/logs/access.log;
}
أعدّ أيضاً «موقعاً شاملاً» للنطاقات غير المعروفة، وإلا فسيُفتح أول إعداد أبجدياً لأي نطاق خارجي يشير إلى عنوانك:
server {
listen 80 default_server;
server_name _;
return 444;
}
فصل الصلاحيات
إذا كانت المواقع تخص عملاء مختلفين أو مشاريع مختلفة، فلا تمنحها مستخدماً مشتركاً: ثغرة في سكربت واحد تعني عندئذٍ الوصول إليها جميعاً.
useradd -r -d /var/www/example.ru -s /usr/sbin/nologin site-example
chown -R site-example:www-data /var/www/example.ru
chmod 750 /var/www/example.ru
بالنسبة إلى PHP، أنشئ مجمّع FPM منفصلاً لكل موقع مع user وlisten خاصين به — راجع PHP-FPM. افصل قواعد بياناتك أيضاً: المستخدمون والصلاحيات.
الشهادات
تشغيلة certbot واحدة تغطي عدة نطاقات دفعة واحدة:
certbot --nginx -d example.ru -d www.example.ru -d shop.ru -d www.shop.ru
التجديد مشترك، بمؤقّت واحد. التفاصيل — Let's Encrypt.
كم موقعاً سيتّسع
احسب بالذاكرة، لا بعدد النطاقات. الموقع الثابت لا يكاد يكلّف شيئاً؛ أما موقع CMS مع قاعدة بيانات فيكلّف مئات الميغابايتات.
| المستوى | الذاكرة | الإرشاد |
|---|---|---|
| VDS-1 (2 GB) | 2 GB | موقعا CMS أو عشرة مواقع ثابتة |
| VDS-2 (4 GB) | 4 GB | 3–5 مواقع CMS |
| VDS-3 (8 GB) | 8 GB | 8–12 موقع CMS |
القرص محدود أيضاً: 40 GB على VDS-1، و250 GB على VDS-6. لا يمكنك إلا ترقية خطتك، بدفع الفرق عن الأيام المتبقية من الفترة المدفوعة.
أخطاء شائعة
| العَرَض | السبب |
|---|---|
| جميع النطاقات تعرض الموقع نفسه | لم يطابق server_name، فتولّى أول كتلة معالجة الطلب |
| سجلات جميع المواقع في ملف واحد | لم يُضبط access_log في كتلة الموقع |
| موقع واحد أسقط كل شيء | مجمّع PHP-FPM مشترك بلا حدود |
| نفاد مساحة القرص | السجلات والنسخ الاحتياطية على القرص نفسه — أعدّ logrotate |
قبل إضافة موقع آخر، تحقق من رسوم الذاكرة البيانية للأسبوع الماضي في «نظرة عامة» بلوحة التحكم على
/hosting/vds/m/<id>. إذا كان الذروة عند السقف بالفعل، فسيكون الموقع الجديد سبب الأعطال، لا نتيجتها.