كيفية تثبيت حزمة LEMP على Ubuntu

0 الأسهم
0
0
0
0

مقدمة

في هذا البرنامج التعليمي، ستتعلم كيفية تثبيت حزمة LEMP (لينكس، NGINX، قاعدة بيانات MySQL، PHP) على نظام Ubuntu 24.04 LTS. بنهاية هذا البرنامج التعليمي، سيكون لديك خادم حزمة LEMP يعمل بكامل طاقته.

المتطلبات الأساسية
  • خادم مع Ubuntu 24.04 LTS
  • الوصول إلى المستخدم الجذر أو المستخدم الذي لديه أذونات sudo
  • تم تثبيت nano أو محرر النصوص المفضل لديك.

الخطوة 1 – تحديث الخادم

استخدم الأمر التالي لتحديث مستودعات الحزمة للتأكد من تثبيت أحدث إصدار من البرنامج:

sudo apt update

ثم استخدم الأمر التالي لترقية الحزم المثبتة حاليًا:

sudo apt dist-upgrade -y

يؤكد العلم -y العملية تلقائيًا، لذلك لا تحتاج إلى كتابة Y للمتابعة.

الخطوة 2 – تثبيت NGINX

NGINX هو خادم الويب الذي سنستخدمه، ويمكننا تثبيته باستخدام الأمر التالي:

sudo apt install nginx -y

الخطوة 3 – تثبيت MySQL

الآن يُمكننا تثبيت خادم MySQL. قاعدة البيانات التي سنستخدمها هي MySQL، ويمكننا تثبيتها باستخدام الأمر التالي:

sudo apt install mysql-server -y

الخطوة 4 – تأمين MySQL

قم بتأمين خادم MySQL المثبت حديثًا باستخدام الأمر التالي:

sudo mysql_secure_installation

سيطلب منك MySQL تأكيد كلمة المرور:

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No:

يمكنك الضغط على Y ثم ENTER.

حدّد سياسة التحقق من كلمة المرور. هناك ثلاثة مستويات:

  • 0: الطول المنخفض >= 8
  • 1: متوسط الطول >= 8، أرقام، أحرف كبيرة وصغيرة، وأحرف خاصة
  • 2: الطول القوي >= 8، رقمي، أحرف كبيرة وصغيرة، أحرف خاصة وملف القاموس

اختر الرقم المناسب، ثم اضغط على زر الإدخال. أنصح باختيار كلمة مرور قوية (الرقم ٢).

سيسألك MySQL إذا كنت تريد إزالة المستخدمين المجهولين:

By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) :

للمتابعة، اضغط على Y ثم ENTER.

بعد ذلك، سيسألك MySQL عما إذا كنت تريد منع تسجيل الدخول الجذر عن بعد:

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) :

للمتابعة، اضغط على Y ثم ENTER.

بعد ذلك، سيسألك MySQL إذا كنت تريد حذف قاعدة بيانات الاختبار والوصول إليها:

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) :

للمتابعة، اضغط على Y ثم ENTER.

الآن، للمرة الأخيرة، سيسألك MySQL إذا كنت تريد إعادة تحميل جداول النتائج:

Reloading the privilege tables will ensure that all changes made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) :

للمتابعة، اضغط على Y ثم ENTER.

تم الانتهاء. لديك الآن خادم MySQL آمن.

الخطوة 5 – تثبيت PHP

يجب أن يحتوي إصدار Ubuntu 24.04 على أحدث إصدار PHP مستقر. يمكنك التحقق من ذلك:

apt list | grep '^php[0-9]*-\(fpm\|mysql\)'

تثبيت PHP:

sudo apt install php8.3-fpm php8.3-mysql -y

php8.3-fpm هو مدير عملية FastCGI الذي يسمح لنا باستخدام PHP على NGINX.

php8.3-mysql هو امتداد يسمح لـ PHP بالتفاعل مع خادم MySQL.

في هذه المرحلة تكون قد انتهيت من تثبيت الحزم.

الخطوة 6 – تكوين NGINX لـ PHP

بشكل افتراضي، لا يتعامل NGINX مع ملفات PHP، لذا نحتاج إلى تحرير ملف التكوين الافتراضي.

استخدم محرر النصوص المفضل لديك لتحرير ملف التكوين الافتراضي، وسأستخدم nano.

sudo nano /etc/nginx/sites-available/default

في هذا الملف، نحتاج إلى التمرير لأسفل قليلاً، داخل كتلة الخادم، بعد الموقع/التوجيه، نحتاج إلى إضافة ما يلي:

 location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; 
}

إذا كان لديك إصدار PHP مختلف مثبتًا، فيمكنك تغييره هنا.

يخبر هذا NGINX بإرسال جميع الملفات ذات امتداد .php إلى مدير عملية FastCGI الذي قمنا بتثبيته سابقًا.

يمكنك أيضًا إضافة index.php إلى القائمة هنا:

 index index.html index.htm index.nginx-debian.html index.php;

احفظ الملف ثم اخرج. (CTRL+X,Y, ENTER) لـ nano.

قم بتشغيل الأمر التالي للتحقق من صحة تكوين NGINX:

sudo nginx -t

يجب أن ترى شيئًا كهذا:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

ثم أعد تشغيل NGINX باستخدام الأمر التالي:

sudo service nginx restart

الخطوة 7 - التحقق مما إذا كان PHP يعمل أم لا

الآن، لنتحقق من عمل PHP مع NGINX. يمكننا إنشاء نص PHP بسيط بصيغة "Hello, World".

الدليل الجذر الافتراضي لـ NGINX هو /var/www/html.

لنقم بإنشاء ملف hello.php في هذا الدليل:

sudo nano /var/www/html/hello.php

داخل الملف، أضف المحتوى التالي:

<?php
echo 'Hello, World!';

احفظ الملف ثم اخرج. (CTRL+X,Y, ENTER) لـ nano.

الآن يمكننا الذهاب إلى http:// في متصفحنا. /hello.php الوصول.

للحصول على عنوان IP العام لخادمك، استخدم الأمر التالي:

hostname -I

إذا لم ينجح ذلك، فحاول استخدام cURL للحصول على عنوان IP العام للخادم:

curl -4 https://ip.hetzner.com

يجب أن ترى هذا:

خاتمة

لقد نجحت في تثبيت حزمة LEMP على نظام Ubuntu 24.04 LTS. يمكنك الآن بدء نشر تطبيقات حزمة LEMP. بالتوفيق!

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

قد يعجبك أيضاً