بسته LEMP مخفف Linux, Nginx, MariaDB/MySQL, PHP میباشد که برای میزبانی و سرویس دهی برنامه های تحت وب همچنین توسعه صفحات وب داینامیک مورد استفاده قرار میگیرد. در این مقاله، شما می آموزید که چگونه LEMP stack را بر روی Rocky Linux 8.4 نصب کنید.
پیش نیازها :
نصب و راه اندازی سرور Rocky Linux 8 با دسترسی sudo
دسترسی SSH به سرور راکی لینوکس
نکته : در تمام مراحل نصب به جای دستور yum شما میتوانید از دستور dnf هم استفاده کنید.
ویدیو آموزش نصب LEMP در RockyLinux8
مرحله 1 : نصب Nginx روی Rocky Linux
اولین مرحله برای نصب انجین ایکس روی راکی لینوکس به روز رسانی تمام پکیج های سیستم میباشد.
بعد از اتمام آپگرید با استفاده از دستور زیر Nginx را نصب کنید. در کنار نصب انجین ایکس پکیج های پیش نیاز مورد نیاز هم نصب خواهد شد.
هنگامیکه نصب Nginx به پایان رسید، سرویس انجین ایکس را به هنگام بوت سیستم Enable و سپس آنرا Start کنید. این کار باعث میشود در صورتیکه سیستم شما ریبوت شد سرویس Nginx به صورت اتوماتیک استارت شود.
برای مطمئن شدن از اینکه سرویس nginx بالا میباشد از دستور زیر استفاده کنید.
در صورتیکه میخواهید از ورژن Nginx نصب شده مطلع شوید دستور زیر را اجرا کنید.
همچنین جهت اطمینان از صحت عملکرد وب سرور Engin X شما میتوانید آدرس ip سرور خود را همانند زیر در یک مرورگر وارد کنید. شما باید صفحه پیش فرض خوش آمد گویی انجین ایکس را مشاهده کنید. در صورتیکه به خطا مواجه شدید همانطور که در ادامه گفته شده باید فایروال را کانفیگ کنید.
در صورتیکه در مشاهده صفحه وب سرور انجین ایکس مشکلی داشتید، میبایست پورت 80 یا سرویس HTTP را روی فایروال باز کنید.
سپس برای اعمال تغییرات میبایست فایروال خود را reload کنید.
مرحله 2 : نصب MariaDB روی Rocky Linux
برای این مقاله، ما پایگاه داده MariaDB را نصب خواهیم کرد. به دلیل عملکرد بهینه شده و موتورهای ذخیره سازی قوی باعث می شود MariaDB بسیار برتر از MySQL باشد.
برای نصب دیتابیس MariaDB دستور زیر را اجرا کنید.
به محض اینکه نصب به پایان رسید، سرویس MariaDB را همانند زیر start و enable کنید.
برای تایید بالا بودن سرویس از دستور زیر استفاده کنید.
به صورت پیش فرض MariaDB از امنیت کافی برخوردار نیست و پایگاه داده شما به راحتی قابل دسترسی توسط هکران میباشد. برای احتیاط جهت جلوگیری از دسترسی غیر مجاز، اسکریپت زیر را اجرا کنید.
مطمئن شوید که تنظیمات پسورد برای یوزر root دیتابیس را انجام دهید.
برای سوالات باقیمانده، به سادگی "Y" را تایپ کنید تا اسکریپت امنیتی یوزرهای ناشناس را حذف، لاگین root از راه دور به دیتابیس را غیرفعال و دیتابیس تست را حذف کند سپس در نهایت تغییرات ایجاد شده ذخیره شود.
برای وارد شدن به محیط دیتابیس خود، دستور زیر را اجرا کنید :
پسورد root دیتابیس را وارد کنید و Enter را فشار دهید.
مرحله 3 : نصب PHP روی Rocky Linux
آخرین مرحله برای نصب، PHP و PHP-FPM هست که مخفف FastCGI Process Manager میباشد که این یک پردازنده موثر و بسیار پیشرفته برای پی اچ پی است که ویژگی هایی را ارائه می دهد که بحبود عملکرد بهینه و امنیت وب سایت های پربازدید را تضمین می کند.
برای شروع، ما ریپازیتوری Remi که آخرین ورژن های PHP را ارائه میدهد، نصب خواهیم کرد. برای فعال کردن ریپازیتوری Remi دستور زیر را اجرا کنید :
به محض اینکه ریپازیتوری Remi فعال شد، لیست ماژول های PHP را با استفاده از دستور زیر مشاهده کنید.
در خروجی ما میتوانیم مشاهده کنیم که ورژن پیش فرض 7.2 میباشد که با تگ [d] نشان داده شده. به هر حال، ما قصد داریم آخرین ماژول را که Remi 8.0 هست را نصب کنیم.
برای reset ماژول پیش فرض PHP و فعال کردن آخرین ماژول PHP Remi دستورات زیر را اجرا کنید :
سپس سیستم تان را آپدیت کنید و PHP و PHP-FPM را به همراه ماژول های پیش نیازش، نصب کنید.
به محض اینکه نصب به پایان رسید، همانند زیر سرویس PHP-FPM را start و در هنگام بوت سیستم enable کنید.
سپس وضعیت سرویس PHP-FPM را با استفاده از دستور زیر مشاهده کنید :
معمولا، PHP-FPM با یوزر Apache اجرا میشه، اما از آنجایی که ما از Nginx استفاده میکنیم، ما نیاز داریم که یوزر را به Nginx تغییر دهیم. بنابراین فایل www.conf را از مسیر زیر با استفاده از ویرایشگر متن مورد علاقه خود باز کنید :
سپس خطوط زیر را پیدا کنید و user و group را همانند زیر به nginx تغییر دهید.
بعد از آن، سرویس PHP-FPM را ریلود کنید :
برای تایید اینکه ما آخرین ورژن پی اچ پی را نصب کرده ایم، دستور زیر را اجرا کنید :
راهکاری دیگر برای تست PHP ایجاد یک فایل PHP ساده و قرار دادن آن در root وب سرور (مکانی که فایل های سایت در آنجا قرار میگیرند) در مسیر /usr/share/nginx/html میباشد. بنابراین یک فایلی با نام info.php در مسیر /usr/share/nginx/html ایجاد کنید :
و محتوای زیر را به آن اضافه کنید سپس آنرا ذخیره کنید :
برای مشاهده تغییرات، وب سرور Nginx خود را ریلود کنید :
در نهایت، فایلی که ایجاد کردید را در مرورگر فراخوانی کنید :
یک صفحه وب با جزئیات کامل درباره ورژن PHP نصب شده به همراه مشتقات آن به شما نمایش داده خواهد شد.
تمام شد! در این مقاله ما به شما نحوه نصب و راه اندازی LEMP Stack روی راکی لینوکس 8 که مخفف سیستم عامل لینوکس (Linux)، وب سرور انجین ایکس (Nginx یا Engin X)، سیستم مدیریت دیتابیس ماریا دی بی (MariaDB یا MySQL) و PHP جهت میزبانی و مدیریت صفحات وب را آموزش دادیم. امیدوارم از خواندن این مقاله لذت کافی را برده باشید.
پیش نیازها :
نصب و راه اندازی سرور Rocky Linux 8 با دسترسی sudo
دسترسی SSH به سرور راکی لینوکس
نکته : در تمام مراحل نصب به جای دستور yum شما میتوانید از دستور dnf هم استفاده کنید.
ویدیو آموزش نصب LEMP در RockyLinux8
مرحله 1 : نصب Nginx روی Rocky Linux
اولین مرحله برای نصب انجین ایکس روی راکی لینوکس به روز رسانی تمام پکیج های سیستم میباشد.
کد PHP:
$ sudo yum update -y
بعد از اتمام آپگرید با استفاده از دستور زیر Nginx را نصب کنید. در کنار نصب انجین ایکس پکیج های پیش نیاز مورد نیاز هم نصب خواهد شد.
کد PHP:
$ sudo yum install nginx
هنگامیکه نصب Nginx به پایان رسید، سرویس انجین ایکس را به هنگام بوت سیستم Enable و سپس آنرا Start کنید. این کار باعث میشود در صورتیکه سیستم شما ریبوت شد سرویس Nginx به صورت اتوماتیک استارت شود.
کد PHP:
$ sudo systemctl enable nginx
$ sudo systemctl start nginx
برای مطمئن شدن از اینکه سرویس nginx بالا میباشد از دستور زیر استفاده کنید.
کد PHP:
$ sudo systemctl status nginx
در صورتیکه میخواهید از ورژن Nginx نصب شده مطلع شوید دستور زیر را اجرا کنید.
کد PHP:
$ nginx -v
nginx version: nginx/1.14.1
همچنین جهت اطمینان از صحت عملکرد وب سرور Engin X شما میتوانید آدرس ip سرور خود را همانند زیر در یک مرورگر وارد کنید. شما باید صفحه پیش فرض خوش آمد گویی انجین ایکس را مشاهده کنید. در صورتیکه به خطا مواجه شدید همانطور که در ادامه گفته شده باید فایروال را کانفیگ کنید.
کد PHP:
http://server-ip or domain name
در صورتیکه در مشاهده صفحه وب سرور انجین ایکس مشکلی داشتید، میبایست پورت 80 یا سرویس HTTP را روی فایروال باز کنید.
کد PHP:
$ sudo firewall-cmd --zone=public --add-service=http --permanent
سپس برای اعمال تغییرات میبایست فایروال خود را reload کنید.
کد PHP:
$ sudo firewall-cmd --reload
مرحله 2 : نصب MariaDB روی Rocky Linux
برای این مقاله، ما پایگاه داده MariaDB را نصب خواهیم کرد. به دلیل عملکرد بهینه شده و موتورهای ذخیره سازی قوی باعث می شود MariaDB بسیار برتر از MySQL باشد.
برای نصب دیتابیس MariaDB دستور زیر را اجرا کنید.
کد PHP:
$ sudo yum install mariadb-server mariadb
به محض اینکه نصب به پایان رسید، سرویس MariaDB را همانند زیر start و enable کنید.
کد PHP:
$ sudo systemctl enable mariadb
$ sudo systemctl start mariadb
برای تایید بالا بودن سرویس از دستور زیر استفاده کنید.
کد PHP:
$ sudo systemctl status mariadb
به صورت پیش فرض MariaDB از امنیت کافی برخوردار نیست و پایگاه داده شما به راحتی قابل دسترسی توسط هکران میباشد. برای احتیاط جهت جلوگیری از دسترسی غیر مجاز، اسکریپت زیر را اجرا کنید.
کد PHP:
$ sudo mysql_secure_installation
مطمئن شوید که تنظیمات پسورد برای یوزر root دیتابیس را انجام دهید.
برای سوالات باقیمانده، به سادگی "Y" را تایپ کنید تا اسکریپت امنیتی یوزرهای ناشناس را حذف، لاگین root از راه دور به دیتابیس را غیرفعال و دیتابیس تست را حذف کند سپس در نهایت تغییرات ایجاد شده ذخیره شود.
برای وارد شدن به محیط دیتابیس خود، دستور زیر را اجرا کنید :
کد PHP:
$ sudo mysql -u root -p
پسورد root دیتابیس را وارد کنید و Enter را فشار دهید.
مرحله 3 : نصب PHP روی Rocky Linux
آخرین مرحله برای نصب، PHP و PHP-FPM هست که مخفف FastCGI Process Manager میباشد که این یک پردازنده موثر و بسیار پیشرفته برای پی اچ پی است که ویژگی هایی را ارائه می دهد که بحبود عملکرد بهینه و امنیت وب سایت های پربازدید را تضمین می کند.
برای شروع، ما ریپازیتوری Remi که آخرین ورژن های PHP را ارائه میدهد، نصب خواهیم کرد. برای فعال کردن ریپازیتوری Remi دستور زیر را اجرا کنید :
کد PHP:
$ sudo yum install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
به محض اینکه ریپازیتوری Remi فعال شد، لیست ماژول های PHP را با استفاده از دستور زیر مشاهده کنید.
کد PHP:
$ sudo yum module list php
در خروجی ما میتوانیم مشاهده کنیم که ورژن پیش فرض 7.2 میباشد که با تگ [d] نشان داده شده. به هر حال، ما قصد داریم آخرین ماژول را که Remi 8.0 هست را نصب کنیم.
برای reset ماژول پیش فرض PHP و فعال کردن آخرین ماژول PHP Remi دستورات زیر را اجرا کنید :
کد PHP:
$ sudo yum module reset php
$ sudo yum module enable php:remi-8.0
سپس سیستم تان را آپدیت کنید و PHP و PHP-FPM را به همراه ماژول های پیش نیازش، نصب کنید.
کد PHP:
$ sudo yum install php php-fpm php-gd php-mysqlnd php-cli php-opcache
به محض اینکه نصب به پایان رسید، همانند زیر سرویس PHP-FPM را start و در هنگام بوت سیستم enable کنید.
کد PHP:
$ sudo systemctl enable php-fpm
$ sudo systemctl start php-fpm
سپس وضعیت سرویس PHP-FPM را با استفاده از دستور زیر مشاهده کنید :
کد PHP:
$ sudo systemctl status php-fpm
معمولا، PHP-FPM با یوزر Apache اجرا میشه، اما از آنجایی که ما از Nginx استفاده میکنیم، ما نیاز داریم که یوزر را به Nginx تغییر دهیم. بنابراین فایل www.conf را از مسیر زیر با استفاده از ویرایشگر متن مورد علاقه خود باز کنید :
کد PHP:
$ sudo vim /etc/php-fpm.d/www.conf
سپس خطوط زیر را پیدا کنید و user و group را همانند زیر به nginx تغییر دهید.
کد PHP:
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
بعد از آن، سرویس PHP-FPM را ریلود کنید :
کد PHP:
$ sudo systemctl reload php-fpm
برای تایید اینکه ما آخرین ورژن پی اچ پی را نصب کرده ایم، دستور زیر را اجرا کنید :
کد PHP:
$ php -v
راهکاری دیگر برای تست PHP ایجاد یک فایل PHP ساده و قرار دادن آن در root وب سرور (مکانی که فایل های سایت در آنجا قرار میگیرند) در مسیر /usr/share/nginx/html میباشد. بنابراین یک فایلی با نام info.php در مسیر /usr/share/nginx/html ایجاد کنید :
کد PHP:
$ sudo vim /usr/share/nginx/html/info.php
و محتوای زیر را به آن اضافه کنید سپس آنرا ذخیره کنید :
کد PHP:
<?php
phpinfo();
?>
برای مشاهده تغییرات، وب سرور Nginx خود را ریلود کنید :
کد PHP:
$ sudo systemctl restart nginx
در نهایت، فایلی که ایجاد کردید را در مرورگر فراخوانی کنید :
کد PHP:
http://server-ip/info.php
یک صفحه وب با جزئیات کامل درباره ورژن PHP نصب شده به همراه مشتقات آن به شما نمایش داده خواهد شد.
تمام شد! در این مقاله ما به شما نحوه نصب و راه اندازی LEMP Stack روی راکی لینوکس 8 که مخفف سیستم عامل لینوکس (Linux)، وب سرور انجین ایکس (Nginx یا Engin X)، سیستم مدیریت دیتابیس ماریا دی بی (MariaDB یا MySQL) و PHP جهت میزبانی و مدیریت صفحات وب را آموزش دادیم. امیدوارم از خواندن این مقاله لذت کافی را برده باشید.