
به اشتراک بگذارید
راهاندازی یک وبسرور پرقدرت و پایدار همیشه یکی از دغدغههای اصلی مدیران سرور و توسعهدهندگان بوده است. ساختار نرمافزاری LEMP که از Linux + Nginx + MySQL/MariaDB + PHP-FPM تشکیل شده، یک معماری مدرن، سریع و بهینه برای اجرای اپلیکیشنهای PHPمحور محسوب میشود. اگر قصد دارید یک وبسرور سریعتر از Apache، با مصرف منابع کمتر و امنیت بالا داشته باشید، انتخاب LEMP بهترین گزینه است؛ بهخصوص روی سیستمعامل CentOS / AlmaLinux / RHEL / Rocky Linux که بهصورت پیشفرض پایدار و مناسب محیطهای Production طراحی شدهاند.
💡 LEMP چیست؟ ترکیبی از Linux + Nginx + MySQL + PHP است که برای اجرای اپلیکیشنهای PHP با سرعت بالا طراحی شده است.
✅ مزیت اصلی: مصرف RAM بسیار کمتر نسبت به Apache و توانایی پردازش هزاران درخواست همزمان.
✅ مزیت اصلی: مصرف RAM بسیار کمتر نسبت به Apache و توانایی پردازش هزاران درخواست همزمان.
در این آموزش کامل، شما یاد میگیرید چطور بهصورت عملی و قدمبهقدم، LEMP را نصب و روی CentOS کانفیگ کنید، Virtual Host بسازید، PHP-FPM را به Nginx متصل کنید، پایگاه داده را ایمن سازید و در نهایت سرور را برای اجرا آماده کنید.
چکلیست مواردی که در مقدمه یاد میگیرید:
- تفاوت LEMP با LAMP
- دلیل استفاده حرفهایها از Nginx
- ضرورت استفاده از PHP-FPM
- اهمیت امنیت MySQL/MariaDB
- پیشنیازهای نصب و مدیریت سرویسها
- تنظیمات SELinux و Firewall
حتماً زمانی که این مقاله را باز کردهاید…
به دنبال یک راهنمای عملی، واقعی و قابل اعتماد برای نصب Nginx، MySQL و PHP روی CentOS هستید. این مقاله دقیقاً همان چیزی است که نیاز دارید؛ چون تمام مراحل نصب، امنیت، تست نهایی و رفع خطاها را به زبان ساده اما تخصصی توضیح دادهام. پس همراه ما باشید… 😉👇
به دنبال یک راهنمای عملی، واقعی و قابل اعتماد برای نصب Nginx، MySQL و PHP روی CentOS هستید. این مقاله دقیقاً همان چیزی است که نیاز دارید؛ چون تمام مراحل نصب، امنیت، تست نهایی و رفع خطاها را به زبان ساده اما تخصصی توضیح دادهام. پس همراه ما باشید… 😉👇
اگر قصد دارید میزبانی پایدار، سریع و امن برای اجرای پروژههای PHP داشته باشید، سرورهای مجازی و اختصاصی وبداده در انواع موقعیت های جهانی بهترین گزینه هستند.👇
آنچه در این مقاله میخوانید:
6.5بررسی لاگها

LEMP چیست و چگونه کار میکند؟
معماری LEMP مجموعهای از چهار نرمافزار اصلی است که کنار یکدیگر یک وبسرور کامل را تشکیل میدهند. Nginx وظیفه سرویسدهی به درخواستهای وب را برعهده دارد، MySQL/MariaDB دادهها را مدیریت میکند و PHP-FPM پردازش کدهای PHP را به شکل جداگانه انجام میدهد. این جداسازی باعث افزایش سرعت و پایداری سرور میشود.
📝 ساختار LEMP
Client Browser
⬇️
Nginx (Web Server)
⬇️
PHP-FPM (Process Manager)
⬇️
MySQL/MariaDB (Database)
⬇️
Nginx (Web Server)
⬇️
PHP-FPM (Process Manager)
⬇️
MySQL/MariaDB (Database)
Nginx از ساختار event-driven استفاده میکند که هزاران اتصال همزمان را با مصرف منابع بسیار کم مدیریت میکند. در مقابل، Apache از مدل process-based استفاده میکند که برای هر درخواست یک process جدید ایجاد میکند.
چرا باید LEMP را روی CentOS نصب کنیم؟
CentOS همیشه بهعنوان یک سیستمعامل پایدار، قابل اعتماد و مناسب محیط Production شناخته میشود. از طرفی ترکیب LEMP با CentOS یک انتخاب فوقالعاده برای اجرای سایتهای پرترافیک مانند وردپرس، فروشگاههای آنلاین یا APIهای سنگین است.
مزایای نصب LEMP روی CentOS:
- سرعت و Performance بسیار بالا
- مصرف RAM کمتر نسبت به Apache (تا 40% کاهش)
- امنیت بیشتر بهدلیل ساختار ماژولار
- پردازش PHP جدا از Nginx (افزایش پایداری)
- مناسب پروژههای شرکتها و سازمانها
- پشتیبانی بلندمدت (LTS) در نسخههای Stream
پیشنیازهای نصب LEMP روی CentOS
پیش از شروع نصب پشته یا معماری LEMP، لازم است محیط سیستمعامل آماده و سازگار باشد تا از بروز خطاهای احتمالی جلوگیری شود. فراهمبودن دسترسیهای لازم، فعالبودن مخازن و باز بودن پورتهای وبسرور باعث میشود مراحل نصب بدون وقفه انجام شود. این پیشنیازها همچنین پایهای برای امنیت و پایداری سرور در مراحل بعدی فراهم میکنند
- دسترسی SSH به سرور
- داشتن دسترسی root یا sudo
- فعال بودن مخازن EPEL و Remi
- پورتهای 80 و 443 باز باشند
- حداقل 1GB RAM (توصیه: 2GB+)
- فضای دیسک کافی (حداقل 10GB آزاد)
آموزش نصب و کانفیگ LEMP روی CentOS
آموزش نصب و کانفیگ LEMP در این بخش بهگونهای طراحی شده که حتی اگر برای اولینبار با Nginx یا PHP-FPM کار میکنید، بتوانید تمام مراحل را بدون خطا پیش ببرید. این قسمت از مقاله به شما کمک میکند ساختار سرویسها را بهتر درک کنید و بدانید هر مرحله دقیقاً چه نقشی در عملکرد نهایی سرور دارد. هدف این است که در پایان این بخش، یک محیط کاملاً آماده و استاندارد برای اجرای وبسایتهای PHP داشته باشید.
در این بخش همراه تیم وبداده باشید تا به صورت عملی و قدمبهقدم LEMP را روی CentOS نصب کنیم.
در این بخش همراه تیم وبداده باشید تا به صورت عملی و قدمبهقدم LEMP را روی CentOS نصب کنیم.
1- نصب و آمادهسازی سیستم (Foundation Setup)
در این مرحله هدف ایجاد یک پایه پایدار برای ادامه نصب LEMP است؛ بهطوریکه سیستمعامل بهروز، مخازن فعال و وابستگیها آماده باشند. این بخش کمک میکند از بروز خطاهای احتمالی در مراحل بعدی جلوگیری شده و فرآیند نصب با بیشترین سازگاری و کمترین مشکل انجام شود.
1-1 بروزرسانی سیستم
# برای CentOS 7:
yum update -y
# برای CentOS 8+ / AlmaLinux / Rocky Linux:
dnf update -y این فرمان تمام بستههای سیستم را به آخرین نسخه پایدار آپدیت میکند. این کار قبل از نصب LEMP ضروری است.
2-1 نصب مخازن EPEL و Remi
# برای CentOS 7:
yum install epel-release -y
yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
# برای CentOS 8 / AlmaLinux 8 / Rocky Linux 8:
dnf install epel-release -y
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
# برای AlmaLinux 9 / Rocky Linux 9:
dnf install epel-release -y
dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm -y این مخازن نسخههای جدید PHP و ابزارهای موردنیاز را فراهم میکنند.
3-1 فعالسازی ماژول PHP مورد نظر
# برای CentOS 8+:
dnf module reset php
dnf module enable php:remi-8.2 -y
# برای نصب PHP 8.1:
dnf module enable php:remi-8.1 -y
# برای CentOS 7:
yum-config-manager --enable remi-php82 ⚠️ نکته: نسخههای PHP 8.1 و 8.2 در سال 2025 بهترین انتخاب هستند.
2- نصب و پیکربندی Nginx
در این مرحله هدف ایجاد هماهنگی کامل میان وبسرور و پردازشگر PHP است تا درخواستهای کاربران با سریعترین و کممصرفترین شیوه ممکن پردازش شوند. در این بخش یاد میگیرید چطور Nginx را بهعنوان موتور اصلی سروینگ صفحات و PHP-FPM را بهعنوان پردازشگر مستقل راهاندازی و به یکدیگر متصل کنید تا پایهای برای یک محیط میزبانی بهینه و پایدار فراهم شود.
1-2 نصب Nginx
# CentOS 7:
yum install nginx -y
# CentOS 8+:
dnf install nginx -y 2-2 فعالسازی و شروع سرویس
systemctl enable nginx
systemctl start nginx
systemctl status nginx 3-2 بررسی نسخه Nginx
nginx -v 3- نصب و پیکربندی PHP-FPM
PHP-FPM (FastCGI Process Manager) یک پردازشگر مستقل و بهینهشده برای اجرای کدهای PHP است که برخلاف mod_php در Apache، بهصورت جداگانه از وبسرور کار میکند. این جداسازی باعث میشود Nginx بتواند درخواستهای استاتیک را مستقیماً سرویس دهد و فقط فایلهای PHP را به FPM ارسال کند، در نتیجه مصرف منابع تا 60% کاهش مییابد و سرعت پاسخدهی بهطور محسوسی افزایش پیدا میکند. در این بخش، مراحل نصب PHP-FPM، تنظیم Pool برای هر وبسایت، پیکربندی اتصال Socket با Nginx و بهینهسازی Process Manager را بهصورت عملی و گامبهگام آموزش میدهیم.
1-3 نصب PHP-FPM و اکستنشنهای ضروری
# CentOS 7:
yum install php php-fpm php-mysqlnd php-cli php-opcache php-zip php-xml php-json php-mbstring php-gd php-curl -y
# CentOS 8+:
dnf install php php-fpm php-mysqlnd php-cli php-opcache php-zip php-xml php-json php-mbstring php-gd php-curl -y 2-3 فعالسازی PHP-FPM
systemctl enable php-fpm
systemctl start php-fpm
systemctl status php-fpm 3-3 بررسی نسخه PHP
php -v 4-3 تنظیمات PHP-FPM برای Nginx
vi /etc/php-fpm.d/www.conf تغییرات ضروری:
; تغییر user و group به nginx
user = nginx
group = nginx
; تنظیم socket
listen = /run/php-fpm/www.sock
; تنظیم مالکیت socket
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
; تنظیمات Process Manager
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500 5-3 ریستارت PHP-FPM
systemctl restart php-fpm 6-3 بررسی مسیر Socket
ls -la /run/php-fpm/www.sock خروجی باید شبیه این باشد:
srw-rw---- 1 nginx nginx 0 Dec 8 10:30 /run/php-fpm/www.sock 4- تنظیمات SELinux (بسیار مهم!)
SELinux در CentOS بهصورت پیشفرض فعال است و باید تنظیمات لازم را انجام دهید:
={IMPORTXML("https://webdade.com/post-sitemap1.xml","//*[local-name() = 'url']/*[local-name() = 'loc']");IMPORTXML("https://webdade.com/post-sitemap2.xml","//*[local-name() = 'ur# فعالسازی اتصال شبکه برای Nginx
setsebool -P httpd_can_network_connect 1
# اجازه اجرای حافظه برای PHP
setsebool -P httpd_execmem 1
# تنظیم context برای فایلهای وب
chcon -R -t httpd_sys_content_t /var/www/html/
# اجازه اتصال به database
setsebool -P httpd_can_network_connect_db 1
# بررسی وضعیت SELinux
getenforcel']/*[local-name() = 'loc']");IMPORTXML("https://webdade.com/post-sitemap3.xml","//*[local-name() = 'url']/*[local-name() = 'loc']");IMPORTXML("https://webdade.com/page-sitemap.xml","//*[local-name() = 'url']/*[local-name() = 'loc']")} ⚠️ هرگز SELinux را غیرفعال نکنید! فقط تنظیمات صحیح را اعمال کنید.
5- تنظیمات Firewall
# باز کردن پورت HTTP
firewall-cmd --permanent --add-service=http
# باز کردن پورت HTTPS
firewall-cmd --permanent --add-service=https
# اعمال تغییرات
firewall-cmd --reload
# بررسی وضعیت
firewall-cmd --list-all 6- نصب و پیکربندی MySQL/MariaDB
در این مرحله هدف ایجاد یک پایگاهداده امن، پایدار و بهینه است؛ جایی که اطلاعات حساس اپلیکیشن ذخیره میشود و باید زیرساخت آن بدون ضعف و خطا باشد. تمرکز اصلی این بخش بر نصب درست سرویس، ایمنسازی اولیه و ساخت ساختارهای موردنیاز برای اجرای پروژههای PHP است.
1-6 نصب پایگاهداده
# CentOS 7:
yum install mariadb-server -y
# CentOS 8+:
dnf install mariadb-server -y 2-6 فعالسازی سرویس
systemctl enable mariadb
systemctl start mariadb
systemctl status mariadb 3-6 اجرای امنیت اولیه
mysql_secure_installation در این مرحله باید:
- رمز root تنظیم کنید (رمز قوی انتخاب کنید)
- کاربرهای Anonymous حذف شوند (Yes)
- Remote root login غیرفعال شود (Yes)
- دیتابیس test حذف شود (Yes)
- Reload privilege tables (Yes)
4-6 ساخت دیتابیس و کاربر نمونه
mysql -u root -p CREATE DATABASE myapp CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON myapp.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
EXIT; 5-6 تست اتصال
mysql -u myuser -p myapp 7- ساخت Virtual Host در Nginx
Virtual Host در Nginx به شما امکان میدهد چندین وبسایت با دامنههای مختلف را روی یک سرور واحد میزبانی کنید، بهطوریکه هر سایت دارای تنظیمات، مسیر فایل، لاگ و پیکربندی مستقل خود باشد. در Nginx این قابلیت از طریق ایجاد فایلهای کانفیگ جداگانه در مسیر
/etc/nginx/conf.d/ با ساختار server {} block پیادهسازی میشود و به شما کنترل کامل بر روی هر دامنه، از تنظیمات SSL و PHP-FPM گرفته تا قوانین Rewrite و Cache را میدهد. در این بخش، مراحل ساخت یک Virtual Host کامل، امن و بهینهشده برای اجرای اپلیکیشنهای PHP مانند وردپرس و لاراول را بهصورت عملی آموزش میدهیم.1-7 ساخت دایرکتوری وبسایت
mkdir -p /var/www/html/example.com
chown -R nginx:nginx /var/www/html/example.com
chmod -R 755 /var/www/html/example.com 2-7 ساخت فایل کانفیگ
vi /etc/nginx/conf.d/example.com.conf محتوای فایل (کانفیگ کامل و بهینه):
server {
listen 80;
server_name example.com www.example.com;
root /var/www/html/example.com;
index index.php index.html index.htm;
# لاگها
access_log /var/log/nginx/example.com-access.log;
error_log /var/log/nginx/example.com-error.log;
# تنظیمات امنیتی
server_tokens off;
# بهینهسازی
client_max_body_size 64M;
# مسیر اصلی
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# پردازش PHP
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
# تنظیمات بهینهسازی
fastcgi_buffer_size 128k;
fastcgi_buffers 256 16k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_read_timeout 240;
}
# مسدود کردن فایلهای .htaccess
location ~ /\.ht {
deny all;
}
# مسدود کردن فایلهای مخفی
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
# کش فایلهای استاتیک
location ~* \.(jpg|jpeg|png|gif|ico|css|js|svg|woff|woff2|ttf|eot)$ {
expires 1y;
add_header Cache-Control "public, immutable";
access_log off;
}
} 3-7 تست کانفیگ Nginx
nginx -t خروجی باید:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful 4-7 ریستارت Nginx
systemctl restart nginx 8- بهینهسازی Nginx
بهینهسازی Nginx یکی از مهمترین مراحل برای افزایش سرعت، کاهش مصرف منابع و توانایی پردازش هزاران درخواست همزمان است که از طریق تنظیم پارامترهای حیاتی مانند worker_processes، worker_connections، فعالسازی Gzip، تنظیم Buffer ها و فعالسازی Cache برای فایلهای استاتیک انجام میشود. این تنظیمات میتوانند زمان پاسخدهی سرور (TTFB) را تا 70% کاهش دهند، مصرف پهنای باند را با فشردهسازی تا 80% کم کنند و ظرفیت سرور را برای سرویسدهی به کاربران بیشتر بدون نیاز به ارتقای سختافزار، چندین برابر افزایش دهند. در این بخش، تمام تنظیمات پیشرفته Nginx را در فایل
/etc/nginx/nginx.conf بهصورت عملی و با توضیحات کامل پیادهسازی میکنیم.vi /etc/nginx/nginx.conf تنظیمات بهینه:
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log warn;
pid /run/nginx.pid;
events {
worker_connections 1024;
use epoll;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_tokens off;
# فشردهسازی Gzip
gzip on;
gzip_vary on;
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_types
application/atom+xml
application/javascript
application/json
application/ld+json
application/manifest+json
application/rss+xml
application/vnd.geo+json
application/vnd.ms-fontobject
application/x-font-ttf
application/x-web-app-manifest+json
application/xhtml+xml
application/xml
font/opentype
image/bmp
image/svg+xml
image/x-icon
text/cache-manifest
text/css
text/plain
text/vcard
text/vnd.rim.location.xloc
text/vtt
text/x-component
text/x-cross-domain-policy;
include /etc/nginx/conf.d/*.conf;
} 9- بهینهسازی PHP
بهینهسازی PHP شامل تنظیم پارامترهای حیاتی در فایل
php.ini و فعالسازی OPcache است که میتواند سرعت اجرای کدهای PHP را تا 3 برابر افزایش دهد، مصرف CPU را تا 50% کاهش دهد و زمان پاسخدهی اپلیکیشنهای پرترافیک مانند وردپرس و لاراول را بهطور چشمگیری بهبود بخشد. با تنظیم صحیح پارامترهایی مانند memory_limit, max_execution_time, upload_max_filesize و فعالسازی OPcache که bytecode های PHP را در حافظه کش میکند، میتوانید بدون هیچ تغییری در کد، عملکرد سرور را به حداکثر برسانید و تجربه کاربری بهتری برای بازدیدکنندگان فراهم کنید. در این بخش، تمام تنظیمات توصیهشده برای محیط Production را با توضیحات کامل ارائه میدهیم.vi /etc/php.ini تنظیمات توصیهشده:
max_execution_time = 300
max_input_time = 300
memory_limit = 256M
post_max_size = 64M
upload_max_filesize = 64M
date.timezone = Asia/Tehran
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.revalidate_freq=2
opcache.fast_shutdown=1 ریستارت PHP-FPM:
systemctl restart php-fpm 💡 بیشتر بدانید: آموزش نصب SSL رایگان با استفاده از LetsEncrypt
10- نصب SSL با Certbot
نصب گواهینامه SSL رایگان با Certbot (ابزار رسمی Let’s Encrypt) یکی از سادهترین و سریعترین روشها برای فعالسازی HTTPS روی وبسایت است که نهتنها امنیت ارتباطات را تضمین میکند، بلکه رتبه SEO را بهبود میبخشد و اعتماد کاربران را افزایش میدهد. Certbot بهصورت خودکار کانفیگ Nginx را برای استفاده از HTTPS تنظیم میکند، گواهینامه را صادر میکند و هر 90 روز یکبار آن را بهصورت خودکار تمدید میکند، بنابراین پس از نصب اولیه، دیگر نیازی به مدیریت دستی ندارید. در این بخش، مراحل نصب Certbot، دریافت گواهینامه SSL برای یک یا چند دامنه، پیکربندی خودکار Nginx و تست تمدید خودکار را بهصورت گامبهگام آموزش میدهیم.
# نصب Certbot
dnf install certbot python3-certbot-nginx -y
# دریافت SSL برای دامنه
certbot --nginx -d example.com -d www.example.com
# تست تمدید خودکار
certbot renew --dry-run Certbot بهطور خودکار کانفیگ Nginx را برای HTTPS تنظیم میکند.
تست نهایی معماری LEMP
در این بخش هدف اطمینان از عملکرد صحیح تمام اجزای ساختار نرمافزاری LEMP است؛ بهطوریکه ارتباط میان Nginx، PHP-FPM و MySQL بدون خطا برقرار باشد. این مرحله کمک میکند هرگونه ایراد پنهان در اجرای PHP یا پاسخدهی وبسرور قبل از انتشار پروژه شناسایی شود
ساخت فایل phpinfo
vi /var/www/html/example.com/info.php محتوا:
<?php
phpinfo();
?> ساخت فایل تست MySQL
vi /var/www/html/example.com/dbtest.php محتوا:
<?php
$servername = "localhost";
$username = "myuser";
$password = "StrongPassword123!";
$dbname = "myapp";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully to MySQL!";
$conn->close();
?> بررسی در مرورگر
http://example.com/info.php
http://example.com/dbtest.php اگر صفحه اطلاعات PHP و پیام “Connected successfully” نمایش داده شد، نصب موفق بوده است.
حذف فایلهای تست (امنیت)
rm -f /var/www/html/example.com/info.php
rm -f /var/www/html/example.com/dbtest.php ⚠️ هرگز فایل phpinfo را در production نگه ندارید!
بررسی لاگها
tail -f /var/log/nginx/error.log
tail -f /var/log/nginx/example.com-error.log
tail -f /var/log/php-fpm/error.log نمونه موردی: تجربه کاربر
در سال 2025، یکی از مشتریان هاستینگی یک فروشگاه آنلاین پرترافیک داشت که با Apache + mod_php دچار کندی شدید بود. مشکلات اصلی:
- مصرف RAM بالای 85%
- زمان پاسخ (TTFB) بیش از 2 ثانیه
- کرش کردن سرور در ساعات شلوغی
💡 راهکار وبداده:
پس از مهاجرت به LEMP Stack روی AlmaLinux 8:
✅ نتایج:
✅ نتایج:
- مصرف RAM از 85% به 45% کاهش یافت (کاهش 40%)
- TTFB از 2 ثانیه به 0.4 ثانیه رسید
- توانایی پردازش 3 برابر بیشتر درخواست همزمان
- صفر کرش در 6 ماه گذشته
این تجربه نشان میدهد که نصب صحیح LEMP میتواند تحول چشمگیری ایجاد کند.

جدول مقایسه عملکرد LEMP و LAMP
این جدول به شما کمک میکند تفاوتهای کلیدی دو معماری محبوب وبسرور را در یک نگاه تشخیص دهید و بر اساس نوع پروژه بهترین گزینه را انتخاب کنید. شناخت این تفاوتها بهخصوص زمانی اهمیت دارد که میزان ترافیک، نوع اپلیکیشن و نیازهای فنی شما با یکدیگر متفاوت باشد. هدف این بخش ارائه یک مقایسه عملی برای تصمیمگیری سریع و آگاهانه است.
| ویژگی | LEMP (Nginx + PHP-FPM) | LAMP (Apache + mod_php) |
|---|---|---|
| ساختار پردازش | Event-Driven | Process-Based |
| مصرف RAM در حالت Idle | ~50MB | ~200MB |
| مصرف RAM (100 کاربر) | ~400MB | ~1200MB |
| توانایی هندل ترافیک بالا | عالی (10k+ همزمان) | متوسط (1k همزمان) |
| سرعت پردازش PHP | بالاتر (PHP-FPM) | معمولی |
| سرعت سرویس فایلهای Static | بسیار سریع | متوسط |
| مناسب سایتهای پرترافیک | بله ✅ | با محدودیت ⚠️ |
| پیچیدگی پیکربندی | متوسط | آسان |
| پشتیبانی .htaccess | خیر (نیاز به تبدیل) | بله |
| امنیت | بالاتر | متوسط |
| مصرف CPU (Load Average) | پایینتر | بالاتر |
🔸 نتیجه: برای پروژههای مدرن PHP مثل وردپرس، لاراول و فروشگاهها، ساختار نرمافزاری LEMP انتخاب حرفهایتری است.
نتیجهگیری نهایی: راهنمای نصب وب سرور LEMP برای CentOS
پیکربندی LEMP روی CentOS/AlmaLinux/Rocky Linux یکی از بهترین روشها برای ساخت یک وبسرور سریع، امن، پایدار و مقیاسپذیر است. در این راهنمای جامع، شما یاد گرفتید:
- ✅ چگونه Nginx، PHP-FPM و MariaDB را نصب کنید
- ✅ چگونه Virtual Host بسازید و پیکربندی کنید
- ✅ چگونه SELinux و Firewall را بهدرستی تنظیم کنید
- ✅ چگونه SSL/HTTPS را با Certbot فعال کنید
- ✅ چگونه عملکرد را بهینهسازی کنید
🔹 LEMP تا 40% کمتر از Apache منابع مصرف میکند
🔹 PHP-FPM سرعت پردازش را تا 3 برابر افزایش میدهد
🔹 Nginx میتواند 10,000+ اتصال همزمان را مدیریت کند
🔹 تنظیمات صحیح SELinux حیاتی است (هرگز آن را غیرفعال نکنید!)
🔹 PHP-FPM سرعت پردازش را تا 3 برابر افزایش میدهد
🔹 Nginx میتواند 10,000+ اتصال همزمان را مدیریت کند
🔹 تنظیمات صحیح SELinux حیاتی است (هرگز آن را غیرفعال نکنید!)
استفاده از LEMP برای:
- ✅ سایتهای وردپرسی پرترافیک
- ✅ فروشگاههای اینترنتی
- ✅ اپلیکیشنهای لاراول
- ✅ APIهای RESTful
- ✅ پلتفرمهای SaaS
- ✅ سایتهای خبری و مجلهای
در نهایت، اگر به دنبال اجرای یک پروژه بزرگ، پرترافیک یا شرکتی هستید و نمیخواهید وقت خود را صرف نصب و پیکربندی کنید، پیشنهاد میکنیم از سرورهای مجازی و اختصاصی وبداده استفاده کنید تا بهترین عملکرد و پشتیبانی را تجربه کنید.
اگر سوالی درباره نصب، پیکربندی یا مشکلات LEMP دارید، در بخش نظرات با ما در ارتباط باشید. تیم فنی وبداده آماده پاسخگویی و راهنمایی شماست.
سوالات متداول از آموزش نصب LEMP (Linux- Nginx – MySQL – PHP) روی CentOS 7
1- آیا LEMP برای وردپرس مناسب است؟
بله، وردپرس روی LEMP بسیار سریعتر و پایدارتر اجرا میشود. با استفاده از PHP-FPM و کش Nginx، سرعت بارگذاری صفحات تا 3 برابر افزایش مییابد.



