LEMP | Nginx | PHP | MySQL | Ubuntu 22.04 | Ubuntu
از Ubuntu 22.04 استفاده نمیکنید؟
میتوانید نسخه یا توزیع دیگری را انتخاب کنید.
مقدمه
پشته نرمافزاری LEMP برای ارائه صفحات وب پویا و برنامههای وب نوشتهشده با PHP استفاده میشود. این نام مخفف موارد زیر است:
-
Linux: سیستمعامل
-
Nginx (تلفظ: Engine-X): وبسرور
-
MySQL: پایگاه داده
-
PHP: پردازش محتوای پویا
در این راهنما، نصب کامل پشته LEMP روی یک سرور Ubuntu را بررسی میکنیم. سیستمعامل اوبونتو بخش لینوکس را پوشش میدهد و در ادامه نصب و پیکربندی سایر اجزا توضیح داده میشود.
نکته: این آموزش عمدتاً برای Ubuntu 22.04 LTS با PHP 8.1 نوشته شده است.
اگر از Ubuntu 24.04 LTS استفاده میکنید، در تمام دستورات:
php8.1-fpmرا باphp8.3-fpmجایگزین کنیدمسیر سوکت PHP-FPM را به
/run/php/php8.3-fpm.sockتغییر دهید
سرفصلها
-
نصب Nginx
-
نصب MySQL
-
نصب PHP
-
پیکربندی Nginx برای استفاده از PHP
-
تست PHP با Nginx
-
تست اتصال پایگاه داده از PHP
پیشنیازها
-
یک کاربر غیر root با دسترسی sudo
-
فایروال UFW فعال
-
سرور Ubuntu
(میتوانید از راهنمای نصب اولیه سرور Ubuntu استفاده کنید)
مرحله ۱ – نصب وبسرور Nginx
ابتدا فهرست بستهها را بهروزرسانی کنید:
سپس Nginx را نصب کنید:
پس از نصب، وضعیت سرویس را بررسی کنید:
اگر خروجی نشان دهد که سرویس active (running) است، همهچیز درست پیش رفته.
باز کردن پورت HTTP در فایروال
نمایش پروفایلهای موجود:
فعالسازی فقط HTTP:
بررسی وضعیت فایروال:
تست Nginx
اگر دامنه ندارید، IP سرور را پیدا کنید:
یا از بیرون:
در مرورگر باز کنید:
اگر صفحه پیشفرض Nginx را دیدید، نصب موفق بوده است.
مرحله ۲ – نصب MySQL
نصب MySQL:
اجرای اسکریپت امنیتی:
در این مرحله:
-
میتوانید پلاگین بررسی قدرت رمز عبور را فعال یا غیرفعال کنید
-
رمز عبور قوی برای کاربر root دیتابیس تنظیم میشود
-
کاربران ناشناس و دیتابیس تست حذف میشوند
-
لاگین ریموت root غیرفعال میشود
ورود به MySQL
خروج:
نکته امنیتی: در Ubuntu، احراز هویت root بهصورت پیشفرض با
auth_socketانجام میشود، نه رمز عبور. این موضوع امنیت را افزایش میدهد.
مرحله ۳ – نصب PHP
نصب PHP-FPM و افزونه MySQL:
بررسی وضعیت:
مرحله ۴ – پیکربندی Nginx برای PHP
ساخت دایرکتوری سایت
ساخت فایل تنظیمات Nginx
محتوا:
فعالسازی پیکربندی:
بررسی و ریلود:
ساخت صفحه تست
محتوا:
مرحله ۵ – تست PHP با Nginx
ساخت فایل info.php:
در مرورگر:
پس از تست، فایل را حذف کنید:
مرحله ۶ – تست اتصال پایگاه داده از PHP (اختیاری)
ساخت دیتابیس و کاربر
ساخت جدول نمونه
اسکریپت PHP اتصال به MySQL
در مرورگر:
پرسشهای متداول (FAQ)
LEMP برای چه استفاده میشود؟
برای اجرای وبسایتها و اپلیکیشنهای PHP مانند WordPress، Laravel، Magento و Drupal.
تفاوت LEMP و LAMP چیست؟
LEMP از Nginx (غیرهمزمان و سریعتر برای ترافیک بالا) استفاده میکند، LAMP از Apache.
کدام نسخه Ubuntu مناسب است؟
-
Ubuntu 22.04 → PHP 8.1
-
Ubuntu 24.04 → PHP 8.3
خطای 502 Bad Gateway چرا رخ میدهد؟
معمولاً به دلیل:
-
اجرا نبودن PHP-FPM
-
مسیر اشتباه سوکت
-
مشکل دسترسی یا مجوزها
راهحل:
جمعبندی
با انجام این مراحل، پشته LEMP بهطور کامل روی سرور Ubuntu شما راهاندازی شده است. حالا میتوانید:
-
چندین وبسایت روی یک سرور اجرا کنید
-
پروژههای PHP مدرن را میزبانی کنید
-
بهراحتی مقیاسپذیری و امنیت را مدیریت کنید
زیرساخت آماده است؛ حالا نوبت ساختن چیزهای جدیتر است.

