AdBlock Detection Block

Sure, ad-blocking software does a great job at
blocking ads, but it also blocks some useful and important features of our
website. For the best possible site experience please take a moment to
disable your AdBlocker.

كيفية تثبيت حزمة LAMP :Linux - Apache - MySQL - PHP على أوبنتو 14.04

نشره Fahad في الثلاثاء, 2014/09/30 - 3:02م

حزمة LAMP

مقدمة

حزمة " LAMP " هي مجموعة من البرمجيات مفتوحة المصدر التي يتم عادة تثبيتها معا لتمكين الخادم من الاستضافة المواقع وتطبيقات الويب الديناميكية. هذا المصطلح هو في الواقع اختصار الذي يمثل نظام التشغيل لينكس (Linux)، مع خادم الويب أباتشي (Apache)و يتم تخزين بيانات الموقع في قاعدة بيانات ( MySQL)، وتتم معالجة المحتوى الديناميكي بواسطة لغة بي اتش بي (PHP) في هذا الدليل، سوف نحصل على حزمة LAMP لمثبتة على أوبونتو 14.04 . حيث يوفر أبونتو تلبية احتياجاتنا الأولى وهي نظام التشغيل لينكس.

شرط أساسي

قبل أن تبدأ مع هذا الدليل، يجب أن يكون لديك حساب مستخدم منفصل غير جذر non-root معد مسبقا على الخادم الخاص بك. يمكنك تعلم كيفية القيام بذلك من خلال استكمال الخطوات 1-4 في إعداد الخادم الأولي لأوبونتو 14.04

خطوة الأولى - تثبيت أباتشي (Apache)

خادم الويب أباتشي (Apache) هو حاليا خادم الويب الأكثر شعبية في العالم، مما يجعله الخيار الافتراضي الأشهر لاستضافة موقع على شبكة الإنترنت. يمكننا تثبيت أباتشي بسهولة باستخدام مدير الحزم أوبنتو apt ، حيث أن مدير الحزم يسمح لنا بتثبيت معظم البرامج من مستودعات تحتفظ بها أوبونتو خالية من المشاكل. يمكنك معرفة المزيد حول كيفية استخدام apt هنا. لتحقيق هدفنا يمكننا أن نبدأ بكتابة هذه الأوامر:

sudo apt-get update
Sudo apt-get Install apache2

وبما أننا نستخدم أمر سودو (sudo)، لتنفيذ هذه العمليات مع امتيازات root. سوف يطلب منك كلمة المرور للمستخدم العادي الخاص بك للتحقق من نواياك. بعد ذلك، يتم تثبيت خادم الويب الخاص بك. يمكنك القيام بالتحقق على الفور من أن كل شيء يسير كما هو مخطط له من خلال زيارة عنوان IP العام للخادم الخاص بك في متصفح الويب الخاص بك (راجع العنوان المقبل لمعرفة ما هو عنوان IP العام الخاص بك إذا لم يكن لديك هذه المعلومات بالفعل):

http://your_server_IP_address

سترى صفحة ويب أباتشي الافتراضية في أوبونتو 14.04، وهي من أجل أهداف إعلامية واختبارية. ينبغي أن ننظر بشيء من هذا القبيل:

الصفحة الافتراضية في أباتشي

إذا كنت ترى هذه الصفحة الآن فإن تثبيت خادم الويب الخاص بك سار بشكل صحيح.

كيفية العثور على عنوان خادم IP العام الخاص بك إذا كنت لا تعرف ما هو عنوان IP العام للخادم الخاص بك، يوجد عدد من الطرق التي يمكنك العثور عليه. في العادة، هذا العنوان هو الذي تستخدمه للاتصال على الخادم الخاص بك من خلال SSH. من سطر الأوامر، يمكنك أن تجد عدد قليل من الطرق. أولا، يمكنك استخدام أدوات iproute2 للحصول على عنوانك بكتابة هذا الأمر:

`ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'`

وسوف يعطيك سطر أو سطرين في الخلفية. كلاهما عناوين الصحيحة، ولكن قد يكون جهاز الكمبيوتر الخاص بك قادر فقط على استخدام واحد منهم، لذا لا تتردد في تجريب كلاهما. هناك طريقة بديلة لاستخدام طرف خارجي ليخبرك كيف يرى هو الخادم الخاص بك. يمكنك القيام بذلك عن طريق سؤال خادم معين ما هو عنوان بروتوكول الإنترنت الخاص بك:

curl http://icanhazip.com

بغض النظر عن الطريقة التي تستخدمها للحصول على عنوان IP الخاص بك، يمكنك كتابته في شريط عنوان متصفح الويب الخاص بك للحصول على الخادم الخاص بك. الخطوة الثانية - تثبيت ميسكل ( MySQL)

الآن لدينا خادم الويب يمكن تشغيله ، لهذا حان الوقت لتثبيت ميسكل (MySQL ) وهي نظام إدارة قواعد البيانات.وبشكل مبسط تقوم بتنظيم وتوفير إمكانية للوصول إلى قواعد البيانات حيث يقوم موقعنا بتخزين البيانات فيها. مرة أخرى، يمكننا استخدام apt للحصول وتثبيت برنامجنا. هذه المرة سنقوم أيضا بتثبيت سلسلة من الحزم الأخرى "المساعدة" التي سوف تساعدنا في التواصل بين المكونات مع بعضها البعض:

sudo apt-get install mysql-server php5-mysql

ملاحظة: في هذه الحالة، لا توجد حاجة لتشغيل sudo apt-get update. لأنه قمنا بتنفيذه في الأوامر أعلاه عند تثبيت أباتشي. لهذا يجب أن يكون فهرس الحزم محدثا في جهاز الكمبيوتر حتى الآن. أثناء التثبيت، سوف يطلب منك الخادم الخاص بك تحديد وتأكيد كلمة مرور ميسكل للمستخدم "root". حيث أن هذا هو الحساب الإداري في ميسكل (MySQL ) الذي يمتلك امتيازات أعلى. لهذا يجب التفكير في الأمر بأنه يشبه حساب root للخادم نفسه ( والذي تعده هو مخصصا لـ MySQL فقط على كل حال). عند اكتمال التثبيت، نحن بحاجة لتشغيل بعض الأوامر إضافية للحصول على بيئة ميسكل (MySQL ) آمنة بشكل أفضل. أولا، نحن بحاجة لنخبر ميسكل (MySQL ) بأن تنشي هيكل لمجلدات قواعد البيانات حيث ستخزن معلوماتك الخاصة. يمكنك القيام بذلك عن طريق كتابة:

sudo mysql_install_db

بعد ذلك نريد تشغيل برنامج أمني بسيط من شأنه إزالة بعض الإعدادات الافتراضية الخطيرة وتأمين الوصول إلى نظام قاعدة البيانات الخاصة بنا قليلا. بدء تشغيل البرنامج النصي التفاعلي:

sudo mysql_secure_installation

سيطلب منك إدخال كلمة المرور التي قمت بتعيينها لحساب ميسكل (MySQL ). بعد ذلك، سوف يسالك إذا كنت ترغب في تغيير كلمة المرور. إذا كنت راضيا مع كلمة المرور الحالية، اكتب  "n" . بالنسبة لبقية الأسئلة، يجب عليك ببساطة ضغط على زر"ENTER" لقبول القيم الافتراضية. سيؤدي هذا إلى إزالة بعض المستخدمين و قواعد البيانات ، وتعطيل ميزة الوصول عن عن بعد لإدارة ميسكل (MySQL ) ، وكذلك تحميل هذه القواعد الجديدة بحيث ان ميسكل (MySQL ) تحترم التغييرات التي قمنا بها فورا. عند هذه النقطة، سيكون خادم قاعدة البيانات الخاصة بك جاهز للعمل والآن يمكننا المضي قدما.

الخطوة الثالثة - تثبيت PHP

PHP هو مكون من مكونات الإعداد لدينا التي من شأنها معالجة التعليمات البرمجية لعرض محتوى ديناميكي. فإنه يمكننا تشغيل البرامج النصية، وكذلك الاتصال بقواعد بياناتنا ميسكل (MySQL ) للحصول على المعلومات، وتسليم المحتوى جاهز لخادم الويب لدينا لعرضه. يمكننا الاستفادة مرة أخرى من النظام apt لتثبيت مكوناتنا. وسنقوم بتثبيت بعض الحزم المساعدة أيضا:

sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt

من المفترض أن تثبيت PHP اكتمل من دون أي مشاكل. سنقوم باختبار هذه بعد قليل. في معظم الحالات، سوف ترغب في تعديل الطريقة التي يعمل بها أباتشي للملفات عند طلب مجلدا ما. حاليا، إذا طلب مستخدم ما مجلدا من الخادم، سوف يقوم أباتشي بالبحث أولا عن الملف index.html. نحن نريد أن نقول لخادم الويب لدينا أعطى الأولوية لملفات PHP، لهذا فإنك سوف تجعل أباتشي يبحث عن ملف index.php بدلا عن الملف الأول. للقيام بذلك، اكتب هذا الأمر وفتح ملف dir.conf في محرر النص مع امتيازات root:

sudo nano /etc/apache2/mods-enabled/dir.conf

سيبدو هذا:

<IfModule mod_dir.c>
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

نحن نريد أن يتحرك ملف الفهرس PHP أعلاه إلى المركز الأول بعد مواصفات DirectoryIndex، مثل هذا:

<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

عند الانتهاء، قم بحفظ الملف وإغلاقه عن طريق الضغط على "CTRL-X". سيكون لديك فرصة لتأكيد حفظ بكتابة "Y" ثم ضغط على "ENTER" من أجل تأكيد موقع حفظ الملف. بعد هذا، نحن بحاجة إلى إعادة تشغيل خادم الويب Apache من أجل التعرف التغييرات الجديدة. يمكنك القيام بذلك عن طريق كتابة هذا:

sudo service apache2 restart

تثبيت وحدات PHP

لتعزيز وظيفة PHP، يمكننا تثبيت بعض الوحدات الإضافية بشكل اختياري لعرض الخيارات المتاحة لوحدات والمكتبات PHP، يمكنك كتابة هذا في النظام الخاص بك:

apt-cache search php5-

إن النتائج هي كل المكونات الاختيارية التي يمكنك تثبيتها. وسوف يعطيك وصفا موجزا عن كل منهما:

php5-cgi - server-side, HTML-embedded scripting language (CGI binary)
php5-cli - command-line interpreter for the php5 scripting language
php5-common - Common files for packages built from the php5 source
php5-curl - CURL module for php5
php5-dbg - Debug symbols for PHP5
php5-dev - Files for PHP5 module development
php5-gd - GD module for php5
. . .

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

apt-cache show package_name

سيكون هناك الكثير من المخرجات، ,ولكن هناك خانة تسمى Description-en والتي تحوي على تفسير أطول من الوظائف التي توفرها الوحدة النمطية.

على سبيل المثال، لمعرفة ما تقوم به وحدة PHP5-CLI، يمكننا أن نكتب هذا:

apt-cache show php5-cli

جنبا إلى جنب مع كمية كبيرة من المعلومات الأخرى، وستجد شيئا يشبه هذا:

. . .
SHA256: 91cfdbda65df65c9a4a5bd3478d6e7d3e92c53efcddf3436bbe9bbe27eca409d
Description-en: command-line interpreter for the php5 scripting language
This package provides the /usr/bin/php5 command interpreter, useful for
testing PHP scripts from a shell or performing general shell scripting tasks..
The following extensions are built in: bcmath bz2 calendar Core ctype date
dba dom ereg exif fileinfo filter ftp gettext hash iconv libxml mbstring
mhash openssl pcntl pcre Phar posix Reflection session shmop SimpleXML soap
sockets SPL standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader
xmlwriter zip zlib.
.
PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used
open source general-purpose scripting language that is especially suited
for web development and can be embedded into HTML.
Description-md5: f8450d3b28653dcf1a4615f3b1d4e347
Homepage: http://www.php.net/
. .

وإذا قررت بعد البحث، أنك ترغب في تثبيت حزمة ما، يمكنك القيام بذلك باستخدام أمر apt-get install مثلما كنا نفعل في برامج أخرى. فإذا قررنا أن PHP5-CLI هو الشيء الذي نحتاجه، يمكننا أن نكتب:

sudo apt-get install php5-cli

وإذا كنت تريد تثبيت أكثر من وحدة، يمكنك أن تفعل ذلك من خلال كتابتها كلها مفصولة بمسافة بعد أمر apt-get install مثل هذا:

sudo apt-get install package1 package2 ...

عند هذه النقطة، ستكون حزمة LAMP الخاصة بك قد ثبتت . ولكن ينبغي اختبار PHP بالرغم من ذلك.

الخطوة الرابعة - اختبار PHP على خادم الويب الخاص بك

من أجل اختبار أن نظامنا تم إعداده بشكل صحيح لPHP، يمكننا إنشاء برنامج نصي PHP بسيط جدا. سنطلق عليه info.php . من أجل أن يكون أباتشي قادرا على العثور على الملف وخدمته بشكل صحيح، ينبغي حفظه في مجلدا محدد جدا، وهو ما يسمى "web root" في أوبونتو 14.04، يقع هذا الدليل في /var/www/html/. حيث يمكننا إنشاء ملف في ذلك الموقع عن طريق كتابة:

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

هذا سيفتح ملفا فارغا. وسنضع النص التالي، وهو كود PHP صالح، داخل الملف:

<?php
phpinfo();
?>

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

http://your_server_IP_address/info.php

الصفحة التي ستظهر ينبغي أن تكون مشابه من هذا القبيل:

الصفحة الافتراضية لـ php

هذه الصفحة تمنحك العديد من المعلومات حول خادمك من منظور PHP. ومن المفيد تصحيح الأخطاء وضمان أن إعداداتك يجري تطبيقها بشكل صحيح.

إذا كان هذا ناجحا، فإن PHP الخاص بك يعمل كما هو متوقع. ربما تريد إزالة هذا الملف بعد هذا الاختبار لأنه يمكن أن يعطي في الواقع معلومات حول الخادم الخاص بك للمستخدمين غير المصرح بهم. للقيام بذلك، يمكنك كتابة هذا:

sudo rm /var/www/html/info.php

يمكنك دائما إعادة إنشاء هذه الصفحة إذا كنت تحتاج لللوصول إلى المعلومات مرة أخرى في وقت لاحق.

خاتمة

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

  • تثبيت وورد نظام إدارة المحتوى الأكثر شعبية على شبكة الأنترنت
  • إعداد PHPMyAdmin للمساعدة في إدارة قواعد البيانات MySQL الخاص بك من متصفح الويب.
  • معرفة المزيد عن MySQL لإدارة قواعد البيانات.
  • تعلم كيفية إنشاء شهادة SSL لتأمين حركة المرور إلى خادم الويب الخاص بك.
  • تعلم كيفية استخدام SFTP لنقل الملفات من وإلى الخادم الخاص بك.

هذه المقالة مترجمة من موقع DigitalOcean

مستكشف مانع الإعلانات

نحن نعرف أن الإعلانات مزعجة!

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