انتقل إلى المحتوى الرئيسي
العودة إلى الفئة

تثبيت WordPress وتحسينه: دليل VPS

دليل تثبيت وتحسين WordPress على VPS. إعداد LEMP Stack، إعدادات wp-config.php، صلاحيات الملفات، SSL، تحسين أداء OPcache وتعزيز الأمان.

وقت القراءة: 20 دقيقة استضافة الويب / التطبيقات
wordpressvpslempnginxphp-fpmmysqlsslopcacheأمان

جدول المحتويات

تثبيت WordPress وتحسينه: دليل VPS

WordPress هو نظام إدارة المحتوى الأكثر استخداماً في العالم. تشغيل WordPress على VPS بدلاً من الاستضافة المشتركة يمنحك تحكماً أكبر وأداءً أفضل وخيارات تخصيص. يغطي هذا الدليل تثبيت WordPress وإعداده وتحسينه على LEMP Stack.

المتطلبات الأساسية: LEMP Stack

hljs bash
# تحديث النظام
sudo apt update && sudo apt upgrade -y

# تثبيت Nginx
sudo apt install nginx -y
sudo systemctl enable nginx

# تثبيت MariaDB
sudo apt install mariadb-server -y
sudo systemctl enable mariadb
sudo mysql_secure_installation

# تثبيت PHP 8.2 والإضافات المطلوبة لـ WordPress
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update
sudo apt install php8.2 php8.2-fpm php8.2-mysql php8.2-xml php8.2-curl \
  php8.2-mbstring php8.2-zip php8.2-gd php8.2-imagick php8.2-intl \
  php8.2-bcmath php8.2-soap -y
sudo systemctl enable php8.2-fpm

إنشاء قاعدة بيانات WordPress

hljs sql
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'كلمة-مرور-قوية';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

تنزيل وتثبيت WordPress

hljs bash
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo mv wordpress /var/www/mysite.com

# تعيين صلاحيات الملفات
sudo chown -R www-data:www-data /var/www/mysite.com
sudo find /var/www/mysite.com -type d -exec chmod 755 {} \;
sudo find /var/www/mysite.com -type f -exec chmod 644 {} \;

إعداد wp-config.php

hljs php
// إعدادات قاعدة البيانات
define( 'DB_NAME', 'wordpress' );
define( 'DB_USER', 'wpuser' );
define( 'DB_PASSWORD', 'كلمة-مرور-قوية' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );

// تعطيل تحرير الملفات (أمان)
define('DISALLOW_FILE_EDIT', true);

// إجبار SSL
define('FORCE_SSL_ADMIN', true);

// حد الذاكرة
define('WP_MEMORY_LIMIT', '256M');

إعداد Nginx (لـ WordPress)

hljs nginx
server {
    listen 80;
    server_name mysite.com www.mysite.com;
    root /var/www/mysite.com;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location = /xmlrpc.php { deny all; }
    location = /wp-config.php { deny all; }
    location ~ /\. { deny all; }

    location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff|woff2|svg)$ {
        expires 1y;
        add_header Cache-Control "public, immutable";
    }

    client_max_body_size 64M;
}
hljs bash
sudo ln -s /etc/nginx/sites-available/mysite.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

شهادة SSL

hljs bash
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d mysite.com -d www.mysite.com

تحسين PHP (OPcache)

hljs ini
opcache.enable = 1
opcache.memory_consumption = 256
opcache.max_accelerated_files = 10000
opcache.revalidate_freq = 2
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
max_input_vars = 3000

تعزيز أمان WordPress

hljs bash
# تأمين wp-config.php
sudo chmod 600 /var/www/mysite.com/wp-config.php

اضبط صلاحيات wp-config.php على 600. هذا الملف يحتوي على كلمة مرور قاعدة البيانات.

على خوادم REXE، يُوصى بـ 2 جيجابايت ذاكرة RAM على الأقل لـ WordPress. للمواقع ذات الحركة العالية، يُفضَّل 4 جيجابايت+ RAM وتخزين SSD.

الخلاصة

موقع WordPress الخاص بك يعمل الآن على LEMP Stack على VPS، مؤمَّن بـ SSL ومحسَّن بـ OPcache. حافظ على صحة موقعك بالنسخ الاحتياطية المنتظمة وتحديثات الأمان ومراقبة الأداء.