آموزش نصب LEMP در Arch Linux [راهنمای کامل]

این روزها داشتن یه سرور وب سریع، امن و مطمئن برای راهاندازی سایت یا اپلیکیشن واقعا اهمیت داره. یکی از بهترین گزینهها برای این کار، پشته نرمافزاری LEMP هست که شامل Linux، Nginx، MariaDB و PHP میشه. این ترکیب به خاطر سرعت بالا، سبک بودن و انعطافپذیری، هم برای توسعهدهندههای حرفهای جذابه و هم برای کسانی که تازه دارن شروع میکنن.
در این آموزش نحوه نصب LEMP در Arch Linux یاد میگیرید. این پشته پایهای قدرتمند برای توسعه وبسایتها و اپلیکیشنهای وب فراهم میکند.
چرا Arch Linux؟
Arch یک توزیع مینیمال و بسیار انعطافپذیر است که به شما کنترل کامل روی نرمافزارها و تنظیمات میدهد. این یعنی میتونید یک سرور سبک و سریع و دقیقاً متناسب با نیازهای پروژه خود بسازید. نصب LEMP روی Arch علاوه بر ارائه یک محیط قدرتمند، به شما تجربهای آموزشی و عمیق در کار با لینوکس میدهد.
معرفی LEMP
پشتهی LEMP شامل چهار جزء اصلی است:
Linux: سیستمعامل پایه
Nginx: وبسرور قدرتمند و سبک
MariaDB: پایگاه داده محبوب و جایگزین MySQL
PHP: زبان سمت سرور برای ایجاد محتوای پویا
این ترکیب بهطور گسترده در پروژههای وب مقیاسپذیر و حرفهای استفاده میشود و جامعه متنباز پشتیبانی بسیار خوبی از آن دارد.
چرا پشته LEMP؟
Nginx بهجای Apache: سبک و سریع و بهینه برای مدیریت اتصال های همزمان.
MariaDB بهجای MySQL: متنبازتر، سریعتر در کوئریهای پیچیده و بدون نگرانی از آینده بسته شدن.
PHP-FPM: اجرای بهینهتر اسکریپتهای PHP و مدیریت هوشمند پردازشها.
ترکیب با Arch Linux: محیطی مینیمال و انعطافپذیر که فقط شامل آن چیزی است که نیاز دارید؛ در نتیجه سروری سبک و بهینه خواهید داشت.
چرا پشته LEMP روی Arch Linux؟ (تجربه شخصی)
Nginx: در پروژههایی که تست کردم، Nginx در مقایسه با Apache مصرف رم خیلی کمتری داشت و بهخصوص در ترافیکهای بالا پایدارتر عمل کرد.
MariaDB: زمانی که دیتابیسهای حجیم داشتم، MariaDB کوئریها رو سریعتر از MySQL جواب میداد. تجربه شخصی من نشون میده برای اپلیکیشنهای بزرگتر هم انتخاب مطمئنتریه.
PHP-FPM: اجرای بهینه تر اسکریپت های PHP و مدیریت و کنترل هوشمند پردازش ها.
Arch Linux: تجربه من با آرچ لینوکس این بود که سیستم چیزی رو که لازم داشتم رو نصب میکرد و خبری از سرویسهای اضافی نبود. به همین خاطر، سرورم سبک شد و سرعت بوتش هم افزایش پیدا کرد.
مراحل نصب LEMP در Arch Linux
1- تنظیم شبکه با IP استاتیک
توی نسخه جدید آرچ از systemd-networkd استفاده کنین.
- نمایش رابط های شبکه:
ip link
- ایجاد فایل پیکربندی:
sudo nano /etc/systemd/network/20-wired.network
- نمونه پیکربندی:
[Match] Name=ens33 [Network] Address=192.168.1.33/24 Gateway=192.168.1.1 DNS=8.8.8.8 8.8.4.4
- فعال سازی و بررسی اتصال:
sudo systemctl enable systemd-networkd sudo systemctl restart systemd-networkd ping -c 3 google.com
2- به روزرسانی سیستم و نصب SSH
sudo pacman -Syu sudo pacman -S openssh sudo systemctl enable sshd sudo systemctl start sshd sudo systemctl status sshd
از این به بعد میتونید سرور رو از راه دور کنترل کنید.
3- نصب و پیکربندی Nginx
sudo pacman -S nginx sudo systemctl enable nginx sudo systemctl start nginx sudo systemctl status nginx
4- نصب و امنسازی MariaDB
sudo pacman -S mariadb sudo systemctl enable mariadb sudo systemctl start mariadb sudo systemctl status mariadb
- اجرای اسکریپت امنیتی:
sudo mysql_secure_installation
مراحل امنیتی پیشنهادی:
- تعیین رمز عبور روت
- حذف کاربران ناشناس
- غیرفعال کردن ورود روت از راه دور
- حذف پایگاه داده تست
5- نصب PHP و PHP-FPM
sudo pacman -S php php-fpm php-mysql sudo systemctl enable php-fpm sudo systemctl start php-fpm sudo systemctl status php-fpm
6- نصب و پیکربندی PhpMyAdmin
sudo pacman -S phpmyadmin sudo ln -s /usr/share/webapps/phpMyAdmin /usr/share/nginx/html/phpmyadmin
- ویرایش php.ini و فعال سازی ماژول ها:
extension=mysqli extension=pdo_mysql
7- پیکربندی Nginx برای PHP
- ویرایش فایل تنظیمات Nginx:
sudo nano /etc/nginx/nginx.conf
- نمونه تنظیمات:
server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include fastcgi.conf; fastcgi_pass unix:/run/php-fpm/php-fpm.sock; } location /phpmyadmin { root /usr/share/webapps; index index.php; try_files $uri $uri/ =404; } }
- ریستارت سرویس ها:
sudo systemctl restart php-fpm sudo systemctl restart nginx
8- تست نصب LEMP
- با مرورگر به آدرس های زیر بروید:
http://localhost
http://<IP-Server>/phpmyadmin
اگر صفحه PhpMyAdmin باز شد، نصب موفقیت آمیز بوده است.
9- فعالسازی سرویسها در بوت
sudo systemctl enable nginx sudo systemctl enable php-fpm sudo systemctl enable mariadb
نکات امنیتی و بهینه سازی
فعال سازی فایروال (مثل UFW یا iptables) برای محدود کردن دسترسی ها
بررسی و مانیتورینگ لاگهای Nginx و MariaDB
تنظیم پشتیبانگیری منظم از پایگاه داده ها
محدود کردن دسترسی کاربران غیرضروری به سرور
سخن آخر
نصب و تنظیم LEMP روی Arch Linux فقط چند دستور ساده نیست؛ این کار به شما کمک میکنه هم یه محیط قدرتمند برای میزبانی سایتها و اپلیکیشنها بسازید، هم با ساختار لینوکس بهتر آشنا بشید. ترکیب سبک و منعطف Arch با عملکرد بالای Nginx، MariaDB و PHP، اون رو به یه انتخاب عالی برای توسعهدهندهها و مدیران سرور تبدیل میکنه.
اگر میخواید واقعاً تجربه کار با LEMP روی یه محیط پایدار و سریع رو داشته باشید، سرورهای مجازی لینوکس آذرسیس گزینه خوبی هستن. با خرید VPS لینوکس از آذرسیس، میتونید بدون دغدغه محدودیتهای هاست اشتراکی، پروژههاتون رو روی یه محیط امن، پرسرعت و همیشه دردسترس اجرا کنید.
در LEMP از Nginx استفاده می شود، ولی در LAMP وبسرور Apache است.
بله، باید در فایل تنظیمات Nginx بخش location ~ .php$ اضافه و سوکت PHP-FPM معرفی شود.
معمولاً در /etc/nginx/ قرار دارند.