قائمة طعام
مجاني
التسجيل
الصفحة الرئيسية  /  الوسائط المتعددة/ تثبيت برنامج php 5 windows 7. كيفية تثبيت PHP: كل مخاطر العملية

تثبيت php 5 windows 7. كيفية تثبيت PHP: كل مخاطر العملية

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

يمكن توفير مترجم php كوحدة نمطية لـ Apache ، وتنفيذ البرامج النصية من سطر الأوامرأو كخدمة php-fpm منفصلة. تختلف هذه الخدمات في قدراتها وغرضها ، ولكن بالنسبة لأي نوع من المترجمين الفوريين ، تحتاج إلى تعيين الإعدادات الأساسية، على سبيل المثال، مجلد العمل، بما في ذلك الملحقات ، وعرض الأخطاء ، وما إلى ذلك. يتم ضبط كل هذه الإعدادات من خلال ملف php.ini. في هذا البرنامج التعليمي ، سننظر في كيفية تكوين ملف php.ini بتنسيق أنظمة التشغيل Linux ، على الرغم من أن جميع المعلومات ستعمل مع Windows أيضًا.

إذا لم تكن قد قمت بتثبيت مترجم لغة البرمجة php بعد ، فيمكنك قراءة المقال.

لكل إصدار من إصدارات المترجم الفوري ، يوجد ملف تكوين php.ini في مجلد منفصل. ولكن كل ملفات التكوينموجودة في المجلد / etc / php ، على سبيل المثال ، / etc / php5:

يحتوي مجلد conf.d على ملفات الاعدادات العامةبالنسبة للإضافات والوحدات النمطية المختلفة ، فلن تهمنا الآن. تعد المجلدات الثلاثة التالية أكثر إثارة للاهتمام - apache و cli و fpm. تحتوي على ملفات تكوين php.ini لكل من هؤلاء المترجمين الفوريين.

إذا كنت ستستخدم العديد من هؤلاء المترجمين الفوريين ، فسيتعين عليك تحديد الإعدادات لكل منهم على حدة. يمكنك التأكد من وجود ملف php.ini في كل مجلد.

أما بناء جملة الملف فهو مقسم إلى أقسام ، أولاً هناك قسم إعدادات php ، والذي ينقسم إلى أقسام فرعية حسب نوع الإعدادات ، ثم هناك أقسام لتكوين وحدات مختلفة. إن بناء جملة الإعدادات نفسها بسيط للغاية ، فهو يتوافق مع الصيغة المعتادة لملفات ini. يبدأ السطر باسم الإعداد ، متبوعًا بعلامة يساوي ، متبوعة بقيمة:

اسم_الإعداد = معلمة_قيمة

تشير الرموز إلى اسم القسم ، على سبيل المثال ، والرمز ؛ يعني تعليقًا ، ولا يقرأه المترجم وكل الحروف التي تليها. لنلق نظرة الآن على كيفية تكوين ملف php.ini ونستعرض أهم المعاملات.

إعداد ملف php.ini

لتسهيل التوجيه ، سنقسم جميع المعلمات إلى فئات حسب الغرض منها. يكفي أن تجد المعلمة المطلوبة وتغير قيمتها. افتح الآن ملف تكوين php ، على سبيل المثال ، لوحدة apache وانتقل إلى التكوين. لتجنب الأخطاء ، لا تقم بإضافة أسطر جديدة ، ولكن ابحث عن الأسطر الموجودة وقم بتغيير القيم إلى القيم المطلوبة:

sudo gedit /etc/php5/apache/php.ini

أولاً ، هناك القليل من المعلومات حول الملف نفسه في شكل تعليقات ، ثم الإعدادات التي تهمنا.

إخراج خطأ php

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

display_errors = off

استبدل بـ on. يستخدم php أنواع مختلفةالأخطاء ، على سبيل المثال ، الأخطاء الحرجة ، التحذيرات ، أخطاء بناء الجملة ، باستخدام سطر error_reporting ، يمكنك تمكين إخراج أنواع معينة من الأخطاء فقط:

error_reporting = E_ALL & ~ E_DEPRECATED

إذا كنت بحاجة إلى الجمع بين عدة أنواع من الأخطاء ، فاستخدم الرمز & ولتعطيل العرض ، اسبق الكتابة بعلامة ~. يعرض المثال أعلاه جميع الأخطاء (E_ALL) باستثناء رسائل الميزات المهملة (E_DEPRECATED). يمكنك تعطيل جميع الأنواع باستخدام 0:

error_reporting = 0

قم بتمكين تسجيل أخطاء php إذا لم تعرضها على الشاشة:

من أجل عدم انسداد السجل برسائل من نفس النوع ، يمكنك تجاهل الأخطاء المتكررة في نفس التنفيذ:

ignore_repeated_errors = تشغيل

حدود الموارد

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

بشكل افتراضي ، الحد الأقصى لوقت تنفيذ النص البرمجي هو 30 ثانية ، فلنخصص دقيقة:

max_execution_time = 30

إذا حددت 0 ، فيمكن تشغيل البرنامج النصي إلى أجل غير مسمى. يمكنك أيضًا تحديد الوقت الذي سيحمل النص خلاله البيانات ، 60 ثانية:

max_input_time = 60

الحد الأقصى لعدد المتغيرات في GET و POST:

max_input_vars = 1000

تحدد المعلمة التالية الحد الأقصى لمقدار الذاكرة الذي يمكن أن يستخدمه نص برمجي واحد أثناء تنفيذه بالميغابايت:

memory_limit = 128 م

الحد الأقصى لحجم البيانات المرسلة في طلب POST محدود أيضًا ، والحجم الافتراضي هو 8 ميغا بايت:

post_max_size = 8 ميجا

يمكنك تقييد نطاق php على النظام باستخدام الخيار openbase_dir ، فهو يحدد المجلد الذي لا يمكن للسكربت الوصول إليه أعلاه نظام الملفات:

open_basedir = / var / www /

باستخدام التوجيهات disable_functions و disable_classes ، يمكنك تعطيل استخدام وظائف أو فئات معينة في البرامج النصية ، على سبيل المثال ، يمكن أن يكون هذا مفيدًا لاستضافة الويب. في هذا المثال ، نقوم بتعطيل استخدام وظيفة ini_set ، والتي تسمح لك بتغيير إعدادات php من نص برمجي:

disable_functions = ini_set

الدلائل الافتراضية

يتيح لك ملف التكوين php.ini تحديد مسارات نظام الملفات الافتراضية لمختلف الإجراءات. يمكنك تحديد المجلدات حيث سيبحث النظام عن البرامج النصية إذا حاولت تضمينها باستخدام عبارة include:

include_path = ".: / usr / share / php5: / usr / share / php5 / PEAR"

مجلد وحدات php:

extension_dir = "./"

مجلد لتسجيل الملفات المؤقتة:

sys_temp_dir = "/ tmp"

لكي يتمكن المستخدمون من تحميل ملفاتهم إلى الخادم ، على سبيل المثال ، صورة ، تحتاج إلى تمكين هذه الوظيفة في php:

file_uploads = تشغيل

الحد الأقصى لحجم ملف التحميل:

upload_max_filesize = 2M

الحد الأقصى لعدد الملفات التي يمكن أن يقوم برنامج نصي واحد بتحميلها:

max_file_uploads = 20

اكتمل إعداد php.ini تقريبًا ، ولم يتبق لنا سوى الامتدادات.

تكوين الامتدادات

تسمح لك الإضافات بزيادة وظائف php بشكل كبير. على سبيل المثال ، بفضل الامتدادات ، يمكنك استخدام القواعد في البرامج النصية الخاصة بك بيانات mysql، postgresql ، mysqli ، sqlite ، مكتبة رسومية gd والمزيد. يتم تضمين كل هذا في هذا القسم.

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

التمديد = php_mysql.so
التمديد = php_mbstring.so
التمديد = php_pgsql.so

يرجى ملاحظة أن ل تمديد النوافذسيكون بتنسيق dll ، لكن بالنسبة إلى نظام التشغيل Linux ، عليك استخدام ذلك. في الأقسام التالية ، يتم تكوين كل من الامتدادات ، لكننا لن نغطيها لأنها عادة لا تتطلب التهيئة.

الاستنتاجات

في هذه المقالة ، نظرنا في كيفية تكوين php على الخادم ، أو كمبيوتر عاديلتطوير الموقع. يحتوي ملف إعدادات php على بنية بسيطة إلى حد ما وليس من الصعب التعامل معه. بعد الانتهاء من جميع الإعدادات وحفظ التغييرات ، لا تنس إعادة تشغيل خادم الويب أو خدمة php-fpm.

بشكل عام ، يعد php-fpm موضوعًا منفصلاً نظرًا لوجود العديد من الموضوعات إعدادات إضافية، وربما سنلقي نظرة عليها في إحدى المقالات التالية. إذا كان لديك أي أسئلة ، اسأل في التعليقات!

1.3 ك

تقدم هذه المقالة دليل خطوة بخطوةلتثبيت PHP للعمل مع خادم Apache HTTP على Windows. تم اختبار هذا الإجراء على كل من نظامي التشغيل Windows XP و Vista. من المفترض أنك قد أكملت بالفعل تثبيت Apache.

خطوات تكوين PHP 5

1. تنزيل PHP 5

قبل البدء ، قم بتنزيل نسخة PHP 5 من صفحات التنزيل... قم بتنزيل حزمة VC6 المحمية من قسم Windows Binaries - أي لا تقم بتنزيل برنامج التثبيت. على سبيل المثال ، حدد الحزمة التي تحمل علامة " حزمة مضغوطة PHP 5.2.5"، إذا تم تشغيله هذه اللحظةالإصدار الحالي هو 5.2.5.

ملاحظة: يرجى ملاحظة أنني لم أختبر الإجراء أدناه مع إصدارات PHP 5.3 ، فقط منذ 5.2.5 ، والذي كان احدث اصدارفي وقت كتابة هذه السطور. من الناحية النظرية ، يجب اتباع نفس الخطوات لتثبيت PHP 7.

2. تثبيت PHP 5

قم بإنشاء مجلد لـ PHP على القرص الصلب الخاص بك. أقترح c: php ، على الرغم من أنه يمكنك استخدام اسم مجلد وموقع مختلفين. أنا شخصياً أفضل عدم استخدام الأسماء التي تحتوي على مسافات.

استخرج جميع الملفات من الأرشيف الذي تم تنزيله إلى هذا المجلد. للقيام بذلك ، ما عليك سوى النقر نقرًا مزدوجًا فوق الملف المضغوط. ثم اسحب جميع الملفات إلى المجلد c: php.

3. بالنسبة لأولئك الذين يقومون بتحديث الحزمة: احذف ملف PHP.INI القديم من دليل Windows

إذا كنت تقوم بالترحيل إلى PHP 5 مع المزيد نسخة قديمة، التغيير إلى دليل Windows ، ( عادة ما يكون c: windows) واحذف أي ملفات php.ini سبق أن وضعتها هناك.

4. تكوين PHP

انتقل إلى مجلد c: php وقم بعمل نسخة من ملف php.ini الموصى به. اسم ملف جديد php.ini. يجب أن يكون لديك الآن ملف c: phpphp.in بنفس محتوى c: phpphp.ini-الموصى به.

ملحوظة. إذا كنت تستخدم Apache 1 ، فأنت بحاجة إما إلى نقل ملف php.ini إلى دليل Windows ( ج: النوافذ) ، أو التخصيص متغيرات البيئة PATH لتضمين c: php. إذا كنت لا تعرف كيفية القيام بذلك ، فما عليك سوى نقل ملف php.ini إلى مجلد c: windows. لست بحاجة إلى القيام بذلك إذا كنت تستخدم Apache 2 ، حيث سنحدد لاحقًا التوجيه مع موقع ملف php.ini في ملف تكوين Apache 2.

لتثبيت PHP على Windows 7 باستخدام محرر النص (على سبيل المثال ، مثل المفكرة ، والتي يمكن العثور عليها في قسم "النظام" من قائمة "ابدأ")؟ افتح ملف php.ini. قد تحتاج إلى إجراء التغييرات التالية على الملف:

أ) بما في ذلك علامات مفتوحة قصيرة

ابحث عن السطر التالي:

short_open_tag = إيقاف التشغيل

إذا تم تعيين short_open_tag على "إيقاف" ، فإن علامات مثل "

نظرًا لأن العديد من نصوص PHP للجهات الخارجية تستخدم "

short_open_tag = تشغيل

ب) اقتباسات سحرية

عند تثبيت Apache PHP افتراضيًا ، لا يتم إفلات البيانات الواردة تلقائيًا بشرطة مائلة. إذا كنت تريد أن تكون إدخالك مسبوقًا بشرطة مائلة للخلف ("") ، على سبيل المثال ، لإعادة إنتاج إعدادات الاستضافة ، فابحث عن السطر التالي:

magic_quotes_gpc = إيقاف

واستبدله بـ:

magic_quotes_gpc = تشغيل

لا ينصح بالقيام بذلك إذا لم يتم تحديد هذه المعلمة في الاستضافة. حتى عند التعيين على Off ، لا يزال بإمكانك استخدام ملفات دالة PHP تضيف خطوط مائلة ()لإضافة شرطة مائلة لأجزاء معينة من البيانات.

ج) استخدام المتغيرات العالمية

يفترض عدد من النصوص القديمة ، عند تنفيذها ، أن جميع البيانات المرسلة من خلال نموذج ستحتوي تلقائيًا على متغير PHP بنفس الاسم. على سبيل المثال ، إذا كان النموذج يحتوي على حقل إدخال باسم "شيء ما" ، فإن نصوص PHP القديمة تفترض أن معالج PHP سيقوم تلقائيًا بإنشاء متغير باسم $ شيء يحتوي على القيمة المحددة من خلال هذا الحقل.

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

register_globals = إيقاف

وقم بتغييره إلى:

register_globals = تشغيل

تحذير: عند تثبيت PHP على Windows ، لا تفعل ذلك إلا إذا كان لديك برامج نصية لجهات خارجية تحتاجها للعمل. عند كتابة نصوص برمجية جديدة ، من الأفضل دائمًا افتراض أن عنصر register_globals مضبوطًا على " اطفء«.

د) عرض الخطأ

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

لجعل PHP تعرض رسائل الخطأ مباشرة في نافذة المتصفح ، ابحث عن السطر التالي:

display_errors = متوقف

وقم بتغييره إلى:

display_errors = تشغيل

يجب دائمًا تعيين هذه المعلمة على Off على موقع مباشر.

هـ) مسار الجلسة

إذا كان البرنامج النصي يستخدم جلسات ، فابحث عن السطر التالي:

؛ session.save_path = "/ tmp"

يحدد session.save_path المجلد الذي يحفظ فيه PHP ملفات الجلسة. نظرًا لعدم وجود المجلد / tmp في نظام التشغيل Windows ، فأنت بحاجة إلى تثبيت مجلد مختلف. تتمثل إحدى الطرق في إنشاء مجلد باسم c: tmp ( كما سبق أن أنشأنا c: php) وحدد هذا المجلد لهذه المعلمة. إذا قمت بذلك ، فقم بتغيير السطر المحدد على النحو التالي:

session.save_path = "c: tmp"

لاحظ أنه بالإضافة إلى تغيير المسار ، قمت أيضًا بإزالة بادئة الفاصلة المنقوطة ("؛") من السلسلة.

يمكنك أيضًا استخدام مجلد TEMP الحالي على جهاز الكمبيوتر الخاص بك. أو قم بإنشاء مجلد tmp في دليل PHP الخاص بك مثل c: phptmp واضبط ملف التكوين وفقًا لذلك. هناك العديد من الخيارات الممكنة. إذا كنت لا تستطيع أن تقرر أي واحد تختار ، فقط قم بإنشاء c: php وافعل كما قلت أعلاه.

و) خادم SMTP

عند تثبيت PHP 5 5 ، إذا كان البرنامج النصي يستخدم وظيفة mail () وتريد أن تقوم الوظيفة بإرسال البريد بنجاح على الكمبيوتر المحلي ، فابحث عن القسم التالي:

؛ لـ Win32 فقط. SMTP = المضيف المحلي smtp_port = 25 ؛ لـ Win32 فقط. ؛ sendmail_from = [البريد الإلكتروني محمي]

قم بتغييره باستخدام عنوان خادم SMTP وحساب البريد الإلكتروني. على سبيل المثال ، إذا كان لديك خادم SMTP mail.example.comوعنوان البريد الإلكتروني هو [البريد الإلكتروني محمي]، قم بتغيير الكود الخاص بك مثل هذا:

SMTP = mail.example.com smtp_port = 25 sendmail_from = [البريد الإلكتروني محمي]

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

كيفية إعداد Apache لـ PHP 5

هناك طريقتان لتثبيت Apache PHP. أولاً: قم بإعداده للتمهيد مترجم PHPكوحدة أباتشي. ثانيًا ، قم بتكوينه لتشغيل المترجم كملف CGI ثنائي. يجب تطبيق واحد منهم فقط. حدد طريقة الوحدة النمطية إذا تم تثبيت PHP أيضًا على الاستضافة كوحدة Apache ، أو استخدم طريقة CGI إذا تم تنفيذها على الاستضافة.

أ) تشغيل PHP 5 كوحدة أباتشي

لتكوين Apache لتحميل PHP كوحدة نمطية لتحليل نصوص PHP ، استخدم محرر نصوص ASCII لفتح ملف تكوين Apache ، httpd.conf.

إذا كنت تستخدم Apache 1.x ، فسيكون الملف موجودًا في المجلد ج: برنامج FilesApache GroupApacheconf... يمكن لمستخدمي Apache 2.0.x العثور عليه في المجلد ج: برنامج FilesApache GroupApache2confو Apache 2.2.x موجودون في المجلد ج: برنامج FilesApache Software FoundationApache2.2conf... عادةً ما يكون موجودًا في مجلد conf من الدليل حيث تم تثبيت Apache.

ابحث عن مقطع الملف الذي يحتوي على عبارات LoadModule. تعتبر التصريحات المسبوقة برمز "#" معلّقة.

إذا كنت تستخدم Apache 1.x ، أضف السطر التالي بعد كل عبارات LoadModule:

LoadModule php5_module "c: /php/php5apache.dll"

إذا كنت تستخدم Apache 2.0.x ، أضف السطر التالي بعد كل عبارات LoadModule:

LoadModule php5_module "c: /php/php5apache2.dll"

إذا كنت تستخدم Apache 2.2.x ، أضف السطر التالي:

LoadModule php5_module "c: /php/php5apache2_2.dll"

لاحظ أن مثال تثبيت PHP هذا يستخدم حرف الشرطة المائلة للأمام ("/") بدلاً من الخط المائل العكسي التقليدي لـ Windows (""). هذا ليس خطأ مطبعي.

إذا كنت تستخدم Apache 1.x ، فابحث عن سلسلة العبارات "AddModule" وأضف ما يلي بعد كل الأسطر.

AddModule mod_php5.c

ثم ابحث عن كتلة AddType في الملف وأضف السطر التالي بعد جملة AddType الأخيرة. يجب أن يتم ذلك بغض النظر عن إصدار Apache الذي تستخدمه. بالنسبة إلى Apache 2.2.x ، تحتاج إلى العثور على سطور AddType في القسم ... أضف سطرًا قبل الإغلاقلهذا القسم.

إذا كنت بحاجة إلى دعم لأنواع أخرى من الملفات ، على سبيل المثال ".phtml" ، فأضفها إلى القائمة ، على سبيل المثال ، مثل هذا:

بالنسبة لأولئك الذين يستخدمون أحد إصدارات Apache 2 ، فأنت بحاجة إلى تحديد موقع ملف PHP ini. أضف السطر التالي إلى نهاية httpd.conf.

PHPIniDir "c: / php"

إذا استخدمت مجلدًا مختلفًا ، فستحتاج إلى تغيير c: / php إلى المسار الصحيح. لا تنس استخدام الشرطة المائلة للأمام ("/").

إذا كنت تستخدم Apache 1 ، فقد قمت بالفعل بوضع ملف php.ini في مجلد Windows أو في مكان آخر في PATH. لذلك يجب أن تجد PHP من تلقاء نفسها.

تشغيل PHP 5 كملف CGI ثنائي

إذا قمت بتكوين PHP 5 للتحميل كوحدة Apache ، فيمكنك تخطي هذا القسم. إنه مخصص لأولئك الذين يريدون تكوين PHP ليعمل كثنائي CGI.

الإجراء الخاص بذلك عند تثبيت PHP 7 هو نفسه لكل من Apache 1.x وجميع إصدارات سلسلة 2.x.

ابحث عن جزء ملف تكوين Apache الذي يحتوي على قسم ScriptAlias. أضف السطر أدناه بعد سطر ScriptAlias ​​مباشرةً لـ " سي جي بن". إذا كنت تستخدم Apache 2.2.x ، فتأكد من أن الخط قبل الإغلاقللقسم .

ملاحظة: إذا قمت بتثبيت PHP في موقع مختلف ، على سبيل المثال c: Program Filesphp ، فأنت بحاجة إلى تحديد المسار المناسب بدلاً من c: / php / (على سبيل المثال ، c: Program Filesphp)... تذكر أننا نستخدم شرطة مائلة للأمام بسيطة ("/") هنا بدلاً من الشرطة المائلة للخلف في Windows ("").

ScriptAlias ​​/ php / "c: / php /"

يحتاج Apache إلى تكوين نوع PHP MIME. ابحث عن كتلة تعليق AddType التي تشرح استخدامها وأضف السطر التالي أدناه. بالنسبة إلى Apache 2.2.x ، ابحث عن سطور AddType أسفل ... أضف السطر أدناه قبل الإغلاق مباشرةلهذا القسم.

تطبيق AddType / x-httpd-php

كما هو الحال مع تثبيت PHP كوحدة Apache ، يمكنك إضافة أي ملحقات حتى يتعرف عليها Apache على أنها نصوص PHP ، على سبيل المثال:

تطبيق AddType / x-httpd-php .phtml

ثم تحتاج إلى إخبار الخادم بتنفيذ ملف PHP القابل للتنفيذ في كل مرة يواجه فيها برنامج PHP النصي. أضف الكود التالي إلى الملف ، على سبيل المثال ، بعد جزء التعليق الذي يوضح " عمل«.

إذا كنت تستخدم Apache 2.2.x ، أضف الرمز مباشرةً بعد عبارة AddType أعلاه ؛ لا يوجد حظر تعليق في Apache 2.2.x " عمل«.

تطبيق الإجراء / x-httpd-php "/php/php-cgi.exe"

ملاحظة: سيتم التعرف على الجزء "/ php /" على أنه ScriptAlias ​​، وهو نوع من الماكرو الذي يقوم Apache بتوسيعه إلى "c: / php /" ( أو "c: / Program Files / php /" إذا قمت بتثبيت PHP هناك). بمعنى آخر ، لا تضع المسار "c: /php/php.exe" في هذا التوجيه أو "C: / Program Files / php / php.exe"واستخدم "/php/php-cgi.exe".

إذا كنت تستخدم Apache 2.2.x ، فابحث عن القسم التالي في ملف httpd.conf:

أضف الأسطر الموجودة أدناه مباشرة بعد القسم الذي وجدته للتو.

AllowOverride بلا خيارات لا يسمح بأي أمر ، رفض السماح من الكل

ج) تعيين صفحة الفهرس الافتراضية

يشير هذا القسم إلى خيار تثبيت PHP على Windows كوحدة Apache و CGI ثنائية.

إذا كنت تقوم بإنشاء ملف index.php وتريد أن يقوم Apache بتحميله كصفحة رئيسية لموقعك ، فستحتاج إلى إضافة سطر آخر إلى ملف httpd.conf. ابحث عن السطر الذي يبدأ بـ " الدليل"، و أضف" index.php»إلى قائمة الملفات. على سبيل المثال ، إذا كان لديك رمز مثل هذا:

DirectoryIndex index.html

قم بتغييره إلى:

DirectoryIndex index.php index.html

في المرة التالية التي تقوم فيها بتسجيل الدخول إلى خادم الويب باستخدام اسم الدليل ، على سبيل المثال " مضيف محلي" أو " مضيف محلي / دليل /»، سيرسل Apache جميع البرامج النصية من index.php أو محتويات ملف index.html إذا لم يكن index.php متاحًا.

أعد تشغيل خادم الويب Apache

أعد تشغيل خادم Apache. هذا مطلوب لأباتشي لقراءة توجيهات تكوين PHP الجديدة التي وضعتها في ملف httpd.conf. يمكن إعادة تشغيل خادم Apache 2.2 بالنقر المزدوج على أيقونة Apache Service Monitor في شريط المهام والنقر فوق الزر "إعادة التشغيل" في النافذة التي تظهر.

اختبار تثبيت PHP الخاص بك

بعد تثبيت PHP 5 5 أو إصدار آخر من اللغة ، قم بإنشاء ملف php بالسطر التالي:

احفظ ملفًا يسمى test.php في دليل Apache htdocs. إذا كنت تستخدم برنامج "المفكرة" ، فتذكر الاحتفاظ بالاسم " test.php"بعلامات اقتباس. خلاف ذلك ، سيقوم البرنامج بإضافة الامتداد .txt من تلقاء نفسه.

افتح هذا الملف في المتصفح عن طريق إدخال “localhost / test.php” في شريط العناوين (بدون علامات الاقتباس). لا تفتح الملف مباشرة من خلال المستكشف - سترى فقط الرمز الذي أدخلته سابقًا. تحتاج إلى استخدام عنوان url أعلاه للمتصفح لمحاولة الوصول إلى خادم الويب Apache الذي يقوم بتشغيل PHP لتفسير البرنامج النصي.

إذا سارت الأمور على ما يرام ، فسترى صفحة تحتوي على معلومات حول تكوين PHP. تهانينا - لقد نجحت في تثبيت PHP وتهيئة Apache للعمل معها. يمكنك تحميل ملف test.php نفسه إلى استضافتك وتشغيله هناك لمعرفة كيفية تكوين PHP للاستضافة على نفسه ومحاولة إعادة إنتاج هذه الإعدادات على جهازك.

إذا لم يفلح ذلك ، فتحقق لمعرفة ما إذا كان تثبيت PHP أو تثبيت Apache يتسبب في حدوث أخطاء. للقيام بذلك ، افتح نافذة موجه الأوامر وقم بتشغيل php-cgi.exe على ملف test.php ، على سبيل المثال ، c: phpphp-cgi test.php.

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

تعلم PHP

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

يوما سعيدا للجميع!

هذا المنشور هو ترجمة للمقال " كيفية تثبيت وتكوين PHP 5 للتشغيل باستخدام Apache على Windows"من إعداد فريق المشروع الودود

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

يمكن تثبيت PHP في Ubuntu Server بطرق مختلفة - كل هذا يتوقف على نسخته وإصدار نظام التشغيل نفسه. والفرق الرئيسي يكمن في الأوامر نفسها التي يجب تنفيذها.

من الجدير بالذكر أيضًا أن حزمة PHP تتضمن العديد من المكونات التي يمكن تثبيتها بشكل منفصل عن بعضها البعض إذا رغبت في ذلك.

الطريقة الأولى: التثبيت القياسي

يفترض التثبيت القياسي استخدام أحدث إصدار من الحزمة. إنه مختلف لكل نظام تشغيل Ubuntu Server:

  • 12.04 LTS (دقيق) - 5.3 ؛
  • 14.04 LTS (موثوق) - 5.5 ؛
  • 15.10 (مخادع) - 5.6 ؛
  • 16.04 لترًا (Xenial) - 7.0.

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

sudo apt-get install php

وللنسخ السابقة:

sudo apt-get install php5

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

وحدة خادم Apache HTTP

لتثبيت وحدة PHP لـ Apache على Ubuntu Server 16.04 ، تحتاج إلى تشغيل الأمر التالي:

sudo apt-get install libapache2-mod-php. تحميل ملف sudo apt-get install libapache2-mod-php

في الإصدارات السابقة من نظام التشغيل:

sudo apt-get install libapache2-mod-php5

سيُطلب منك كلمة مرور ، وبعد إدخالها يجب أن تمنح الإذن بالتثبيت. للقيام بذلك ، أدخل الحرف "د"أو "نعم"(اعتمادًا على تعريب خادم Ubuntu الخاص بك) وانقر فوق يدخل.

لتثبيت وحدة FPM في إصدار نظام التشغيل 16.04 ، قم بما يلي:

sudo apt-get install php-fpm

في الإصدارات السابقة:

sudo apt-get install php5-fpm

في هذه الحالة ، سيبدأ التثبيت تلقائيًا ، فور إدخال كلمة مرور المستخدم المتميز.

يعد CLI ضروريًا للمطورين الذين ينشئون برامج وحدة التحكم في PHP. لتطبيق لغة البرمجة هذه فيها ، في Ubuntu 16.04 تحتاج إلى تشغيل الأمر:

sudo apt-get install php-cli

في الإصدارات السابقة:

sudo apt-get install php5-cli

ملحقات PHP

لتنفيذ جميع وظائف PHP الممكنة ، يجدر تثبيت عدد من الامتدادات للبرامج التي تستخدمها. سيتم الآن تقديم الأوامر الأكثر شيوعًا لتنفيذ مثل هذا التثبيت.

ملاحظة: سيتم توفير أمرين أدناه لكل امتداد ، حيث يكون الأول لخادم Ubuntu 16.04 والثاني لإصدارات نظام التشغيل السابقة.


يكتسب الاتجاه نحو PHP 7 زخمًا. نظرًا لأنه يعمل بشكل أسرع (بشكل موضوعي!) ، فهو أكثر ملاءمة للتطوير (ولكنه ليس دقيقًا نوعًا ما).

كان WordPress نفسه قادرًا على العمل على إصدارات جديدة من PHP لفترة طويلة. وأنظمة إدارة المحتوى الشائعة الأخرى لا تتخلف عن الركب. لذلك ، من المنطقي نقل الخوادم بأكملها إلى هذا الإصدار. ولكن هناك مشكلة تتمثل في أن البرنامج الموجود في المستودعات الرسمية لتوزيعات Linux ليس في عجلة من أمره للتحديث. لتثبيت شيء جديد ، كقاعدة عامة ، تحتاج إلى استخدام مستودعات إضافية. بالتأكيد لا توجد مشكلة في هذا إذا كنت تستخدم استضافة افتراضية. ولكن إذا احتفظت بالمواقع على خوادمك الخاصة أو VPS ، فأنت بحاجة بالفعل إلى أن تزعج نفسك بتحديث أحدث إصدار من PHP وتثبيته. ونظرًا لأنه في 80٪ من الحالات تستخدم الخوادم لوحة تحكم ISPmanager 5 ، سنتحدث عن تكوين PHP 7 فيها. لماذا أكتب عن هذا ، وليس عن دعم نظام ISP؟ و xs ، لأنه لا يوجد شيء يذكر في دليلهم.

ما إصدارات PHP المثبتة على توزيعات Linux الافتراضية؟

يقدم المضيفون عادةً نظام التشغيل هذا للتثبيت على VPS أو الخوادم المخصصة:

إصدار نظام التشغيل إصدار PHP الافتراضي
دبيان 7 PHP 5.4
دبيان 8 PHP 5.6
سنتوس 6 PHP 5.3
سنتوس 7 PHP 5.4
أوبونتو 14.04.2018 PHP 5.5
نظام التشغيل Ubuntu 16.04.0 PHP 7.0

بالطبع ، هناك خيارات أخرى ، أو العكس ، قد لا يكون هناك شيء من هذه القائمة. لكن الإصدارات الأحدث - Debian 8 و Centos 7 و Ubuntu 16.04 - ستكون متاحة لأي مضيف تقريبًا. من بين هؤلاء الثلاثة ، فقط آخر واحد يمكنه أن يتباهى بتثبيت PHP 7. لكن لديها مشاكل أخرى - إنها جديدة نسبيًا ويمكنك التقاط بعض الأخطاء والأخطاء غير المفهومة فيها. من واقع خبرتي ، يمكن لخوادم Ubuntu استخدام إصدارات LTS (حتى 04 فقط) بعد عامين فقط من الإصدار. على أقل تقدير ، هذا أسهل من البحث لفترة طويلة وتحديد المشاكل التي ، من حيث المبدأ ، لا ينبغي أن تكون موجودة. لقد جربت هذه المرات مع أداء بعض البرامج في أحدث إصدارات Ubuntu.

حول إصدارات Ubuntu

حول إصدارات Ubuntu

بشكل عام ، أنا من أشد المعجبين بـ ubuntu فقط. لسنوات عديدة والعديد من الخوادم كرست للعمل معها. يعد هذا نظام تشغيل ممتازًا ومناسبًا للمواقع الموجودة على الخادم الخاص بك. ولكن كان هذا هو قطاع الشركات ، حيث يتم جمع كل شيء وتصحيحه وتكوينه بشكل فردي. ومع ذلك ، عندما بدأت العمل مع خوادم عملاء مشرفي المواقع ، صادفت حقيقة أنه لا Ubuntu ولا حتى Debian بجودة Centos و Centos 7 على وجه الخصوص. يوصى به أيضًا من قبل مطوري لوحة تحكم ISPmanager. من الناحية العملية ، في الأنظمة القائمة على deb (تشير ubuntu أيضًا إليها) ، واجهت بعض الأخطاء في هذه اللوحة. مع سنتوس - لم يحدث أبدا تقريبا.

بشكل عام ، هذه مسألة سهولة الإدارة - لا يوجد فرق عمليًا في تشغيل البرنامج ، وحتى أكثر من ذلك ، لا توجد مواقع عمليًا بينهما. لا فرق في الأداء - حتى أقل من ذلك. ولكن عند تثبيت البرامج وتكوينها - يمكن أن يكون الاختلاف لائقًا بالفعل.

في Debian و Ubuntu ، يأتي البرنامج مع بعض الإعدادات الأساسية أثناء التثبيت. حتى أنه يبدأ ويعمل مباشرة بعد التثبيت ، تتم إضافته لبدء التشغيل. Centos لا تملك ذلك. Configs افتراضيًا ، لا يبدأ البرنامج تلقائيًا ويجب أن يكون البعض مهيئًا مسبقًا ، وإلا فلن يبدأ ببساطة. على سبيل المثال ، نفس خوادم DBMS - يتم تثبيتها بدون تهيئة. ويحتاجون إلى التهيئة (إنشاء قاعدة نظام) يدويًا قبل البدء.

نفس PHP 7 - من السهل تثبيته على centos ببساطة عن طريق إضافة مستودع إضافي. على الأقل في الإصدار السادس ، على الأقل في الإصدار السابع. في ubuntu 14.04 أو Debian php 7 مثبت أيضًا من add. فجل. ولكن يتم وضعه هناك بالتوازي مع الكعب الافتراضي. ولجعل Apache يعمل عليها ، فأنت بحاجة إلى المزيد. التخصيص. ولكن عند استخدام ISPmanager 5 ، يصبح كل شيء أسهل بكثير.

تثبيت PHP 7 على Centos من مستودعات إضافية

لقد استخدمت هذه الطريقة من قبل. الحقيقة هي أن الفرصة التي كنت سأخبركم عنها ظهرت في ISPmanager مؤخرًا نسبيًا. لذلك ، كان علي تثبيت PHP 7 فقط من مستودع Remi. هناك آخرون ، لكن أفضلهم. ISPmanager لديه القدرة على تثبيت إصدارات PHP البديلة. لكن لم يكن من الممكن استخدامها سابقًا إلا في وضع CGI. وهذا الوضع غير مناسب للجميع وليس لأي موقع. (). في السابق ، استخدم Apache و PHP-FPM PHP على مستوى النظام - وهو ما يسمى في اللوحة محلي.وتتطابق نسخته تمامًا مع تلك التي قدمتها في اللوحة في بداية المقال. على وجه الخصوص ، في Centos 7 سيكون 5.4. وفقًا لذلك ، إذا قمت بتحديث النسخة الأصلية إلى الإصدار المطلوب ، فسيعمل Apache عليها. وقد تم ذلك من قبل.

هذا ليس بالأمر الصعب.

قم بتنزيل وتثبيت مستودع Remi:

wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
دورة في الدقيقة -Uvh remi-release-7.rpm

نسمح باستخدامه:

في ملف /etc/yum.repos.d/remi-php70.repoاللازمة لأول لفت تمكين الاستخدام - يجب أن تكون قيمة التمكين 1. بشكل افتراضي ، هناك 0 ، مما يعني أن المستودع غير مستخدم. هناك طريقة أخرى لاستخدامه ، باستخدام خيار مثبت الحزمة ، لكنني أستخدم هذا الخيار ، لأنه من السهل تذكره وفهمه.

yum install -y php

سيؤدي هذا إلى تحديث php الأصلي إلى الإصدار 7.0. بعد التحديث ، يمكنك إعادة تشغيل اللوحة بحيث "ترى" التحديث:

/ usr / local / mgr5 / sbin / mgrctl -m خروج ispmgr

للقيام بذلك ، تحتاج فقط إلى إيقافه بهذه الطريقة من وحدة التحكم وإعادة تشغيله في المتصفح. حسنًا ، إما أنه لا يمكنك القيام بذلك ، على أي حال ، فإن php 7 موجود بالفعل على الخادم وسيكون هو الذي سيتم استخدامه في وضع الوحدة النمطية Apache أو php-fpm. (بالمناسبة ، يمكنك فعل الكثير من وحدة التحكم بشكل عام)

ولكن هذا هو الطريق - ما يسمى ب "عكاز". لبعض الوقت الآن ، يجب ألا تستخدمه.

تمكين PHP 7 كوحدة Apache في لوحة ISPmanager 5

نظرًا للتحديثات المنتظمة للوحة ، أصبح من الممكن استخدام أي إصدار من PHP ، من تلك التي تم تثبيتها كبدائل والتي كانت متوفرة سابقًا فقط في وضع CGI. ما يسمى بمحدد إصدار PHP. ميزة رائعة ، أوصي باستخدام ISPmanager لهذه الميزة فقط. لا يوجد في أي مكان آخر مثل هذه الراحة والبساطة. هذا ما قالته أنا ، المدير ، الذي ، بدون تواضع زائف ، أكل كلبًا عند إعداد خوادم بدون لوحات ، والآن مع اللوحات. هنا فقط يمكنك بسهولة وببساطة تعيين نسختك الخاصة من PHP لكل موقع - بدءًا من الإصدار 5.2 القديم ، والذي كان مناسبًا عندما لم أبدأ العمل بالفعل حتى ، إلى الإصدار 7.1 الأحدث.

في قائمة الفرصة ، تحتاج إلى تثبيت هذه الإصدارات البديلة نفسها. بعد ذلك ، سيكون من الممكن استخدام المحدد لكل موقع ، ولكن فقط في وضع CGI.

بشكل افتراضي ، يتم تمكين الإصدارات البديلة فقط لأوضاع CGI و PHP-FPM (مؤخرًا).

ولكن في وضع وحدة Apache ، لن يعمل تشغيل هذه الإصدارات على الفور. يظهر الزر المقابل في قائمة PHP باللون الرمادي.

لفترة طويلة لم أستطع فهم سبب ذلك ، وكيفية استخدام هذه الميزة بعد كل شيء. وقم فقط بوضع الإصدار الصحيح من PHP من remy ، بالطريقة الموضحة أعلاه. حتى اليوم طلبت الدعم - ولكن أين؟ علاوة على ذلك ، سبق لي أن بحثت في goog ، وجدت وقرأت المستند الرسمي حول تكوين إصدارات PHP ولم أجد أي شيء فيه.

اتضح أن الصندوق فتح ببساطة:

تحتاج إلى النقر نقرًا مزدوجًا فوق إصدار PHP المطلوب في قائمة "الميزات"... على وجه الخصوص 7.0. وهناك خيار مماثل لتثبيت هذا الإصدار من php كوحدة Apache.

بعد ذلك ، ارجع إلى قسم PHP وهناك للحصول على الإصدار المطلوب ، يصبح الزر نشطًا.

حسنًا ، لقد قمت بالفعل بالتبديل إلى الإصدار السابع ، لذلك أعرض الزر النشط في الإصدار الأصلي 5.4.

يجب أن تعمل هذه الطريقة بأكملها أعلاه على كل من Debian و Ubuntu. من الناحية العملية ، لم أختبره بعد. تحقق - إلغاء الاشتراك pliz. لكن طريقة "العكاز" في نظام التشغيل هذا ستكون بمثابة عكاز أكثر من نظام Centos ، لأنه يتم تثبيت PHP 7 بالتوازي مع الإصدار الخامس ويتم الحصول على نسختين من PHP الأصلية في النظام. وهنا أود معرفة ذلك 🙂 لهذا السبب أوصي بـ Centos.

قم بتمكين إصدار بديل من PHP 7 لوضع NGINX + PHP-FPM في ISPmanager 5

كل شيء بسيط هنا. بعد تثبيت الإصدار البديل ، سيتم تثبيته افتراضيًا لـ PHP-FPM. يكفي تفعيل الإصدار المطلوب في إعدادات المستخدم:

بعد ذلك ، ستعمل جميع المواقع في وضع PHP-FPM لهذا المستخدم في php7.

كيف تتحقق من إصدار PHP لموقع معين وأين تجد إعداداته ، ملف php.ini؟

في بعض الأحيان ، إذا كنت تستخدم عدة إصدارات من PHP على الخادم ، فقد تكون لديك شكوك في أنك تستخدم الإصدار الذي كنت ستنشئه بالضبط. من المستحسن أيضًا التحقق من وجود / عدم وجود الوحدات المطلوبة. أو وضع PHP للتشغيل - أن هذا هو بالضبط وحدة اباتشي ، وليس cgi. طريقة عمل موثوقة و 100٪ للتحقق من ذلك هي إضافة ملف info.php إلى جذر الموقع المطلوب. يجب أن يكون محتواه على النحو التالي:

phpinfo (INFO_MODULES) ،

ثم انتقل إلى site.com/info.php وشاهد تفصيلاً كاملاً للقضايا التي تعذبك بها الشكوك:

علاوة على ذلك ، يرجى ملاحظة أن ملف التكوين الرئيسي لإصدار PHP البديل المضمن بهذه الطريقة ليس في المكان الذي تتوقعه على الإطلاق. قد يؤدي هذا أحيانًا إلى عمليات بحث طويلة وسوء فهم سبب عدم إمكانية تغيير هذا المعامل أو ذاك في تكوين PHP. أنت تبحث عنه في /etc/php.ini ، لكن الموقع يستخدم php في مكان مختلف تمامًا.

استخدم phpinfo في أي موقف غير واضح ، يمكن أن يوفر لك الكثير من الوقت والأعصاب.

حسنًا ، هذا كل شيء بالنسبة لي ، مع الجزء الإداري العملي. علاوة على ذلك ، القليل من الفلسفة.

لماذا تستخدم PHP 7؟

والديك يعرفه. أنا لست مطورًا ، ولا أفهم كل السحر. ومع ذلك ، فقد لوحظ أنه ينفذ التعليمات البرمجية بشكل أسرع بشكل ملحوظ من الإصدارات القديمة. هذه هي النتائج الواردة في اختبار عمل drupal على PHP7 في دراسة معروفة على الأرجح لـ PHP 7 وذاكرة التخزين المؤقت على Habré:

كما ترى ، فهي أسرع مرتين تقريبًا من الإصدارات السابقة. على سبيل المثال ، في خادم مرجعي مع SSD ، سيظهر مرجع WordPress فارغ حوالي 400-500 مللي ثانية TTFB. ولكن في php 7 مع تمكين وتهيئة مسرع opcache wp ، يمكن أن يعمل بوقت استجابة يتراوح من 150 إلى 250 مللي ثانية. أو قد لا يعمل 🙂 ​​لأنه يمكنك وضع بعض القوالب المتميزة الرائعة من قالب وحش عليه ، ثم تبهر لماذا يتم تحميله لمدة 3-5 ثوانٍ (هذا TTFB فقط ، ولكن بصريًا كل شيء قد يكون 10-20) . ويشعر أيضًا وكأنه معتوه ، لأن كل شيء يطير في العرض التوضيحي للمطورين ، يفتح في 100-200 مللي ثانية. بعد كل شيء ، أنت لا تعرف أن كل شيء مخزّن في ذاكرة التخزين المؤقت للأبنوس ، ولا يحتاجون منك للتفاعل بطريقة ما مع الموقع ، ما عليك سوى بيعه لك 🙂 وهذا الوردبريس نفسه لا يشارك حتى في إنشاء الصفحة هناك - كل شيء يتم بواسطة nginx ، وهو من ذاكرة التخزين المؤقت يعطي على الفور. لكن هذا هو كذلك ، استطرادا غنائي من واحد مؤلم.

بشكل عام ، تراكمت الكثير من الخبرة حول موضوع التحسين ورفع تردد التشغيل لوقت الاستجابة ، وفي يوم من الأيام من المرجح أن أسكبها على رؤوسكم ، أيها القراء الأعزاء 🙂 علاوة على ذلك ، فإن تحسين وتسريع كتاب المقالات هو شيء واحد ، أنا بالفعل كتب شيئًا عن هذا. ولكن فيما يتعلق بموضوع تحسين المتاجر والخدمات عبر الإنترنت ، هناك محادثة منفصلة ، وأعتقد أنها يجب أن تكون مثيرة للاهتمام بشكل خاص. وبالتالي؟

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

ما PHP لن تعمل بدونه

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

هناك ما يكفي من الخير في شبكة الإنترنت العالمية. لن نقوم بإدراج مزايا وعيوب كل خادم. بدلاً من ذلك ، سنصف عملية تثبيت Apache التي تم اختبارها بمرور الوقت ، والتي ارتبطت منذ فترة طويلة بتطوير PHP.

تاريخ هذا المنتج مفصل على ويكيبيديا. نظرًا لأن موثوقية Apache قد تم إثباتها من خلال سنوات عديدة من الاستخدام "القاسي" ، فلن تضيع وقتك الثمين في الإثبات. دعنا نحاول تثبيت خادم PHP بشكل مستقل على جهاز كمبيوتر يعمل بنظام Windows.

تثبيت "الهندي"

ضع في اعتبارك التثبيت خطوة بخطوة لخادم قبيلة Apache Indian:

نذهب إلى Apache.org ، في القائمة الموجودة على اليمين ، انقر فوق "تنزيل". بعد ذلك ، في قائمة المرايا المتوفرة ، حدد أيًا منها وقم بتنزيل التثبيت بامتداد msi. (تنسيق أصلي لنظام Windows) وإصدار لا يقل عن 2.2

نظرًا لأن المشروع مفتوح المصدر ، فقد تم "فصل" العديد من تجميعات هذا الخادم. إذا لم تتمكن من العثور على العنوان المحدد ، فانتقل إلى هذا العنوان. تتوفر الإصدارات الأصلية من Apache للتنزيل هنا على المرآة.

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

حدد الدليل حيث يجب تثبيت خادم Apache PHP.

ونحن في انتظار تنفيذ عملية تثبيت البرنامج. انتقل إلى الدليل حيث قمت بتثبيت Apache. ابحث عن httpd.conf في مجلد التكوين وافتحه. ابحث عن السطر "رفض من الكل" وعلق على هذا التوجيه. وبالتالي ، نقوم بإزالة الحماية المضمنة للخادم ، والتي ليست ضرورية للاستخدام المحلي لـ Apache. أي أننا نفتح الوصول إلى جميع المجلدات ، بما في ذلك المجلدات الافتراضية. إذا لم يتم ذلك ، فسيقوم البرنامج بإنشاء خطأ "403" عند محاولة الوصول إلى أي من الأدلة.

احفظ جميع التغييرات وأعد تشغيل الخادم.

ننتقل إلى PHP

انتقل إلى php.net وقم بتنزيل أحد الإصدارات "86" من مجموعة أدوات التوزيع (محمية بشكل أفضل). ثم نقوم بفك ضغطه في مجلد منفصل على نفس القرص مثل الخادم. لن أصف بشكل كامل جميع خيارات اللغة التي يمكن تغييرها. يمكنك قراءة المزيد حول هذا الأمر في الوثائق الفنية المصاحبة.

أود أن أشير إلى ذلك كله إعدادات PHPفي ملف php.ini. يفتح مع أي محرر (بما في ذلك المفكرة). سأقدم وصفًا للعديد من المعلمات الشائعة الاستخدام التي تم تعيينها من خلال هذا الملف:

post_max_size - يحدد الحد الأقصى لمقدار البيانات التي يمكن معالجتها في كل مرة باستخدام طريقة POST.

upload_max_filesize هو الحجم الأقصى للملفات التي يمكن تحميلها.

default_charset - باستخدام هذه المعلمة ، يمكنك ضبط الترميز الافتراضي على utf 8 في PHP.

الآن ، من أجل السعادة الكاملة ، يبقى تسجيل بضعة أسطر في httpd.conf. بمساعدتهم ، سنقوم بتوصيل PHP بالخادم المحلي بحيث يعمل كوحدة Apache. هذا يكفي لكتابة واختبار الكود في المنزل. يجب وضع هذه الأسطر في منتصف الملف:

مسار LoadModule php5_module إلى تثبيت PHP / php5apache2_2.dll - يربط المكتبة التي سيتم استخدام التوزيع معها كوحدة نمطية.

PHPIniDir "path to php.ini / file" (على سبيل المثال ، PHPIniDir "F: /php-5.3.5/") - مفهومة بدون كلمات.

تطبيق AddType / x-httpd-php phtml php - يقوم بتهيئة المراسلات بين ملفات PHP ونوع mime (application / x-httpd-php).

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