كيفية تثبيت LLMP Stack على Ubuntu 20.04 LTS

قم بإعداد خادم Ubuntu 20.04 مع Lighttpd و MySQL و PHP-FPM

Lighttpd هو خادم ويب مفتوح المصدر سريع ومرن يمكن مقارنته من حيث الأداء بخادم Nginx. لاستضافة تطبيقات PHP مثل WordPress و Magento وما إلى ذلك على خادم Lighttpd ، تحتاج إلى إعداد حزمة LLMP على الخادم الخاص بك. LLMP تعني Linux و Lighttpd و MySQL و PHP.

بفضل أداء Lighttpd ، يتفوق مكدس LLMP بسهولة على LAMP (Apache) الذي تم إعداده على أي حجم حركة مرور معين. بقدر ما يذهب LLMP مقابل LEMP (Nginx) ، فإن الأداء متشابه في الغالب. ولكن نظرًا لكون Nginx خيارًا أكثر شيوعًا بين الجماهير ، هناك دعم مجتمعي ممتاز لإعدادات LEMP.

إذا كنت تبحث عن خادم للتعامل مع الكثير من حركة المرور بأقل استهلاك للذاكرة ، فإن إعداد LLMP يعد اختيارًا جيدًا. في هذا الدليل ، سننظر في كيفية تثبيت حزمة LLMP على جهاز Ubuntu 20.04 LTS.

المتطلبات الأساسية

ستحتاج إلى خادم Ubuntu 20.04 LTS وتسجيل الدخول كملف سودو مستخدم ممكّن. ستحتاج أيضًا إلى فهم أساسي لأوامر Linux.

قبل أن نبدأ ، قم بتحديث وترقية الحزم على خادم Ubuntu 20.04 الخاص بك عن طريق إصدار الأمر أدناه:

sudo apt-get update && apt-get Upgrade

قم بتثبيت خادم الويب Lighttpd

لتثبيت خادم الويب Lighttpd على جهاز Ubuntu 20.04 ، فقط أدخل الأمر التالي في جهازك.

sudo apt-install lighttpd

بمجرد اكتمال عملية التثبيت ، اكتب الأوامر التالية لبدء وتمكين خادم الويب Lighttpd.

systemctl بدء lighttpd systemctl تمكين lighttpd

للتحقق من حالة خادم Lighttpd ، اكتب الأمر الموضح أدناه.

lighttpd حالة systemctl

💡 نصيحة: لإزالة السطر الأخير المكتوب عليه (END) ، اضغط على خروج و ف لتتمكن من إدخال أوامر أخرى.

سنقوم الآن بإعداد خدمة HTTP و HTTPS و SSH في جدار حماية UFW. UFW هي أداة تكوين جدار الحماية الافتراضية لـ Ubuntu ، وتسمى أيضًا باسم Uncomplicated Firewall. اكتب الأوامر التالية واضغط على إدخال واحدًا تلو الآخر.

sudo ufw تسمح ssh sudo ufw تسمح http sudo ufw allow https

قم بتمكين جدار حماية UFW بإصدار الأمر التالي:

sudo ufw تمكين

إذا تلقيت مطالبة "قد يؤدي الأمر إلى تعطيل اتصالات ssh الحالية" ، فاكتب ذ وضرب أدخل.

للتحقق من تثبيت Lighttpd ، الوصول إلى الخادم عن طريق عنوان IP الخاص به في متصفح الويب. إذا ظهرت الشاشة التالية ، فهذا يعني أن خادم الويب Lighttpd قد تم تثبيته بنجاح على جهاز Ubuntu 20.04.

تثبيت وتكوين خادم MySQL

MySQL هو نظام لإدارة قواعد البيانات العلائقية يعتمد على لغة الاستعلام المهيكلة. لتثبيت خادم MySQL والعميل على Ubuntu 20.04 ، انسخ / الصق الأمر التالي واضغط على أدخل.

sudo apt-get install mysql-server mysql-client. سودو apt-get install mysql-server-mysql-client

سيطالبك برسالة مفادها أن هذه العملية ستستهلك 247 ميغابايت من مساحة القرص الإضافية بعد التثبيت. لذا ، اكتب ذ وضرب أدخل.

بمجرد اكتمال عملية التثبيت ، ابدأ وتمكين خادم MySQL وأضفه إلى تمهيد النظام عن طريق إصدار الأوامر التالية واحدًا تلو الآخر.

systemctl ابدأ mysql systemctl تمكين mysql

سترى الرسالة التالية على شاشتك:

للتحقق من حالة خدمة MySQL الخاصة بك ، اكتب الأمر التالي في المحطة. ال خدمة mysql يجب أن تظهر الحالة على أنها "نشطة (قيد التشغيل).

systemctl حالة mysql

لتكوين إعدادات أمان MySQL ، سنقوم بتنفيذ سكربت أمان يأتي مع حزمة MySQL. اكتب الأمر التالي واضغط على Enter لتنفيذ البرنامج النصي.

mysql_secure_installation

سيطالبك الأمر أعلاه ببعض الأسئلة لتهيئة خادم MySQL.

سيطلب منك إعداد كلمة المرور الخاصة بك باستخدام التحقق من مكون كلمة المرور. سيساعدك هذا البرنامج المساعد على إعداد كلمة مرور قوية لقواعد بيانات MySQL. صحافة ذ واضغط على Enter لتمكين هذا المكون الإضافي. نوع 0, 1، أو 2 لاختيار سياسة التحقق من صحة كلمة المرور التي تحدد مستوى قوة كلمة المرور الخاصة بك.

أدخل كلمة مرور قوية ، ال تحقق من كلمة المرور سيخبرك المكون الإضافي عن القوة المقدرة لكلمة مرورك. صحافة ذ وضرب أدخل.

بعد إعداد كلمة مرور آمنة ، قم بتهيئة بقية الإعداد كما هو موضح أدناه.

  • إزالة المستخدمين المجهولين - يدخل ص | ص

    لأن MySQL تحتوي افتراضيًا على مستخدم مجهول يسمح لأي شخص بالاتصال بخادم MySQL دون أن يكون لديه حساب مستخدم. لذلك ، قم بإزالته.

  • عدم السماح بتسجيل الدخول إلى الجذر عن بُعد - يدخل ص | ص

    لأن الجذر يجب أن يُسمح به فقط من "المضيف المحلي". يضمن عدم تمكن أي شخص من تسجيل الدخول كجذر خارج شبكتك.

  • إزالة اختبار قاعدة البيانات والوصول إليها؟ - يدخل ص | ص

    لأن MySQL تأتي مع قاعدة بيانات اختبارية يمكن لأي شخص الوصول إليها. وبالتالي ، قم بإزالته قبل الانتقال إلى بيئة الإنتاج.

  • تحديث جداول الامتياز الآن؟ يدخل ص | ص

    لأن هذا سيضمن أن التغييرات التي أجريتها حتى الآن سارية المفعول على الفور.

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

mysql -u الجذر -p

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

حدد المستخدم ، المضيف من mysql.user ؛

بمجرد التحقق من قائمة المستخدمين ، اكتب خروج لتسجيل الخروج من قذيفة MySQL.

تثبيت PHP - Fast CGI process manager (PHP-FPM)

تمكن PHP-FPM الخادم من التعامل مع كمية هائلة من التحميل حتى على خادم منخفض النهاية. تدعي أنها خفضت وقت التحميل بنسبة 300 في المائة على بعض تطبيقات PHP.

لتثبيت أحدث حزم PHP-FPM ، قم بإصدار الأمر التالي واضغط على Enter.

sudo apt-install php-fpm php-cgi php-mysql

اضبط تكوين PHP-FPM من خلال إجراء بعض التغييرات في php.ini ملف.

للقيام بذلك ، انتقل أولاً إلى الدليل/etc/php/7.4/fpm باستخدام قرص مضغوط الأمر كما هو موضح أدناه.

قرص مضغوط /etc/php/7.4/fpm

ثم استخدم الأمر أدناه لفتح php.ini ملف في محرر vim.

vim php.ini

قم بإلغاء التعليق على cgi.fix_pathinfo = 1 خط. ابحث عن السطر الذي يحتوي علىcgi.fix_pathinfo = 1في المحرر. للقيام بذلك اضغط على "خروجواكتب /cgi.fix_pathinfo=1 وضرب أدخل.

ثم اضغط أنا للتبديل إلى وضع الإدراج وإزالة ; (فاصلة منقوطة) قبل السطر أو اضغط على x زر uncommenty الخط في php.ini ملف.

بمجرد الانتهاء ، احفظ التغييرات التي أجريتها في الملف واخرج من محرر vim بالضغط خروج للدخول في وضع الأوامر ثم اكتب : wq وضرب أدخل للخروج من المحرر.

ابدأ وتمكين PHP-FPM بإصدار الأوامر التالية:

systemctl ابدأ php7.4-fpm systemctl تمكين php7.4-fpm

للتحقق من حالة PHP-FPM ، قم بتشغيل الأمر التالي:

حالة systemctl php7.4-fpm

تكوين Lighttpd و PHP-FPM

سنقوم الآن بإجراء بعض التغييرات في 15- fastcgi-php.conf ملف التكوين لتكوين Lighttpd و PHP-FPM.

انتقل إلى الدليل المناسب عن طريق كتابة هذا الأمر واضغط على Enter.

cd etc / lighttpd / conf-available /

إذا كنت تريد الاحتفاظ بنسخة مكررة من15- fastcgi-php.conf'file ثم استخدم الأمر أدناه.

cp 15-fastcgi-php.conf 15-fastcgi-php.conf.orig

الآن ، سنفتح هذا الملف وتحريره باستخدام محرر vim باستخدام الأمر أدناه:

فيم 15-fastcgi-php.conf

هنا ، استبدل محتوى تكوين PHP-CGI الافتراضي بالمحتوى الموضح أدناه.

fastcgi.server + = (".php" => (("socket" => "/var/run/php/php7.4-fpm.sock"، "broken-scriptfilename" => "enable"))) 

للقيام بذلك ، اتبع الخطوات بالترتيب المحدد كما هو موضح أدناه.

  1. صحافة 'خروج' و 'أناللدخول في وضع الإدراج.
  2. انتقل الآن إلى الأسطر التي يتعين علينا حذفها باستخدام ملف فوق أو تحت مفاتيح الأسهم (تعمل مفاتيح الأسهم لأعلى ولأسفل في محرر vim وليس في محرر vi).
  3. لحذف خط معين اضغط ي. ولإزالة كلمة واحدة اضغط x.
  4. الآن انسخ / الصق الكود أعلاه في الملف.
  5. ثم احفظ الملف واخرج من vim بالضغط على خروج, : wq، و أدخل.

الآن سيعمل Lighttpd بشكل مناسب مع PHP-FPM ويتم تكوينه بشكل مناسب.

تفعيل وحدات FastCGI Lighttpd باستخدام الأوامر أدناه:

lighttpd-enable-mod fastcgi lighttpd-enable-mod fastcgi-php

أخيرًا ، أعد تشغيل خادم الويب Lighttpd لتطبيق التكوينات والإعدادات الجديدة.

إعادة تشغيل systemctl lighttpd

اختبار خادم LLMP الخاص بك

لاختبار خادم LLMP الذي تم إنشاؤه حديثًا ، سننشئ ملفًا في جذر الدليل العام في / var / www / html.

انتقل أولاً إلى الدليل باستخدام ملف قرص مضغوط الأمر كما هو موضح أدناه.

cd / var / www / html /

قم بإنشاء ملف جديد دعنا نقولfile.php كما هو موضح أدناه باستخدام محرر vim.

vim file.php

اكتب الآن هذا البرنامج النصي البسيط في المحرر عن طريق الدخول في وضع الإدراج بالضغط أنا.

احفظ واخرج من الملف بالضغط على خروج و : wq.

ال phpinfo () هي وظيفة تستدعي المعلومات المتعلقة بـ php. هذا النص هو فقط لاختبار ما إذا كان يعمل أم لا. يمكنك أيضًا استخدام نصوص php أخرى من اختيارك.

أخيرًا ، لاختبار الخادم الخاص بك ، افتح متصفح الويب ، وقم بالوصول إلى الملف الذي أنشأناه للتو عن طريق إدخال العنوان التالي //your-server-ip/file.php.

إذا ظهرت صفحة إصدار PHP نتيجة لذلك ، فيمكننا القول بأمان أن مكدس LLMP قد تم تثبيته بنجاح على جهاز Ubuntu 20.04 الخاص بك. يمكنك الآن تثبيت تطبيقات PHP التي ترغب في تشغيلها على الخادم.