مضيفات Apache2 الافتراضية. تدرب مع مضيفين افتراضيين

استمتع بقضاء وقت ممتع عزيزي القارئ لمدونة "برمجة WEB من الألف إلى الياء". لقد رأينا اليوم القليل من برمجة الويب ودعونا نتحدث عن أدوات بائعي التجزئة على شبكة الإنترنت. لنكون أكثر دقة ، نحن نتحدث عنه المضيف الظاهري لـ apache2 . يعمل الكثير من تجار التجزئة ويدعمون مجموعة من المشاريع. لذلك ، على سبيل المثال ، لدي مشروع على Joomla ، ومشروع آخر على WordPress ، وكذلك بعض المشاريع الاختبارية التي أعمل عليها. وهنا نلوم الطعام: "وكيف على آلة واحدة تحرق رشاشات مضيفة؟" ثم سأحاول أن أفهم قدر الإمكان في السلسلة الغذائية.
القليل من الاحترام لجهاز العمل الخاص بي هو نظام التشغيل Ubuntu ، خادم apache2. لهذا السبب قمت بإعداد Virtualhost لغرض الاتصال. لا علاقة للفرق بين تكوين Virtualhost على ubuntu بتكوين Virtualhost على Windows أو أن يكون نظام تشغيل آخر. شيء واحد هو تغيير ملفات التكوين للمضيف الظاهري. والآن لنبدأ ...

أود أن أشير إلى أنك قمت بالفعل بتثبيت apache2. يتم تثبيت ابونتو اباتشي من المستودع. بالنسبة لنظام التشغيل Windows ، استخدم حزم Denver و XAMPP.
الآن دعونا نفهم مفاهيم المضيف الظاهري. Virtualhost هو توزيع عدد من المضيفين على جهاز واحد.

توجد ملفات تكوين apache2 في ubuntu في / etc / apache2
ملف apache2.conf هو ملف التكوين الرئيسي.
والمضيفات الافتراضية موجودة في / etc / apache2 / sites-available
بالنسبة للمضيف الظاهري للجلد ، يوجد ملف تكوين في مجلدي.
Ale ce є ذات الصلة ubuntu. بالنسبة لأنظمة التشغيل الأخرى ، قم بإعداد Virtualhost في ملف التكوين apache2 apache2.conf نفسه في ملف .
يبدأ أي وصف للمضيف الظاهري بـ ونهاية. تسي obov'yazkovo !!!
يمكنك أيضًا ربط المضيف الظاهري بعنوان IP ومنفذ واحد. قتال تسي مثل هذا:

:> إعداد Virtualhost

أو اربط مضيفًا افتراضيًا واحدًا بعدد من عناوين IP:

:> إعداد Virtualhost

لنحوم فوق مؤخرة مضيف افتراضي جامح:

ServerAdmin [بريد إلكتروني محمي]اسم الخادم كوهانا ServerAlias ​​kohana DocumentRoot / var / www / kohana ScriptAlias ​​/ cgi-bin / / usr / lib / cgi-bin / ErrorLog /var/www/kohana/error.log # تتضمن القيم المحتملة: debug ، info ، note ، warn ، error ، crit ، # alert ، ظهور. LogLevel تحذير CustomLog /var/www/kohana/access.log الاسم المستعار / doc / "/ usr / share / doc /"

І صف جلد razberemo:

  1. - تعني هذه العلامة ما كان من المفترض أن يتم تعديل المضيف الظاهري إليه. المضيف الظاهري spratsovuvatim عند الكتابة إلى منفذ العنوان 80.
  2. ServerAdmin - توجيه لحذف عنوان البريد الإلكتروني لمسؤول هذا المضيف وسيتم عرضه في إشعارات حول العفو. عقلنا [بريد إلكتروني محمي]
  3. اسم الخادم - يحدد هذا التوجيه اسم المضيف والمنفذ اللذين يعرّفهما الخادم بنفسه. ضروري لإنشاء URL. لذلك ، على سبيل المثال ، لديك المضيف first.example.com ، ويمكن أيضًا تسمية الخادم www.example.com وتريد أن يقوم خادم الويب بتعيين مضيفك كاسم ، ثم في هذا التوجيه يمكنك كتابة ServerName www .example.com
  4. ServerAlias ​​- يعيّن هذا التوجيه أسماء مضيفين بديلة.
  5. DocumentRoot - يقوم التوجيه بتعيين الدليل حيث توجد ملفات معالجة apache2. توبتو. هذا الكتالوج يحفظ ملفات موقعك.
  6. بالنسبة لهذا التوجيه ، يمكننا وصف قواعد مختلفة للكتالوج. توجيه Tsya مذنب بعلامة zakrivatisya.. لذلك ، على سبيل المثال ، سنكتب قواعد للدليل الرئيسي:
AllowOverride FileInfo

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

  • AllowOverride يمكن أن تحتوي هذه المعلمة على القيم التالية: لا شيء - إذا تم تجاهل ملف .htaccess تمامًا ، الكل - إذا تم السماح لجميع الدلائل في .htaccess.
  • خيارات - اضبط مواصفات الخادم لهذا الدليل. يمكنك قبول القيم التالية: لا شيء - لا يزال غير مسموح به مع الخيارات ، الكل - جميع خيارات MultiViews مسموح بها ، ExecCGI - السماح بتتبع نصوص CGI ، FollowSymLinks - الخادم لمتابعة الروابط الرمزية ، يشمل - Server-Site-Includes (SSI) هو مسموح به ، يتضمن NOEXEC - يُسمح بـ SSI ، ولكن يتم حظر أوامر البرنامج النصي #exec و #include ، والفهارس - إذا لم يتم العثور على أي شيء في الكتالوج ، فسيتم تغيير الخادم إلى الدليل ، ويسمح MultiViews - MultiViews<каталог_1>/<каталог_2>وحتى رابتوم<каталог_2>إذا لم يكن كذلك ، فإن الخادم يهمس<каталог_1>ملف<каталог_2>. *) ، SymLinksIfOwnerMatch - يحتوي الخادم فقط على تلك الروابط الرمزية ، والتي يمكن أن يكون للملف أو الدليل لها نفس معرف الارتباط.
  • الطلب - بمساعدة التوجيه ، سنقوم بتعيين ترتيب إعادة الفحص ، إلى. العودة إلى السياج وإذا مر كل شيء معنا ، فهذا مسموح به
  • رفض - يمكن لهذا التوجيه تحديد الوصول إلى الخادم بناءً على المضيف أو عنوان IP. في هذا التوجيه ، قمنا بإعادة تسييج المضيفين
  • سماح - بالنسبة لهذا التوجيه ، يمكنك تحديد الوصول إلى الخادم ، يُسمح بإعادة السماح للمضيف.
  1. ErrorLog - لهذا التوجيه ، يمكننا تحديد المسار إلى ملف السجل.
  2. LogLevel - لهذا التوجيه ، من الممكن زيادة المستوى الذي سيتم تسجيله في ملف السجل. استخدم المعادلات التالية:
  • طوارئ - حالات فوق الابتدائية - النظام غير مناسب ل vikoristannya.
  • تنبيه - dіy vinnі buti vzhitі negayno.
  • النقد - العقل حاسم.
  • خطأ - تبرئة العفو.
  • يحذر - مسبقا.
  • إشعار - صاعقة عادية.
  • معلومات - معلومات.
  • التصحيح - تنبيه التصحيح
  1. CustomLog - توجيه ، حيث يمكن لملف السجل ، إلغاء تسجيل الطلبات إلى الخادم.

Phew ، مع ملف التكوين الخاص بالمضيف الظاهري ، قمنا بفرزه.
لنقم الآن بإنشاء مضيف افتراضي. لهذا في Ubuntu ، في المجلد / etc / apache2 / sites-available / ، نقوم بإنشاء ملف باسم مضيفنا ، على سبيل المثال ، test. І ضع الكود التالي هناك:

ServerAdmin [بريد إلكتروني محمي]اختبار اسم الخادم ServerAlias ​​اختبار DocumentRoot / var / www / test خيارات FollowSymLinks AllowOverride الكل فهارس خيارات FollowSymLinks MultiViews AllowOverride All Order تسمح ، وتنكر السماح من الجميع ScriptAlias ​​/ cgi-bin / usr / lib / cgi-bin / AllowOverride بلا خيارات + ExecCGI -MultiViews + SymLinksIfOwnerMatch Order السماح ، رفض السماح من الكل ErrorLog /var/www/test/error.log # تتضمن القيم المحتملة: التصحيح ، المعلومات ، إشعار ، تحذير ، خطأ ، crit ، # تنبيه ، ظهور. LogLevel تحذير CustomLog /var/www/test/access.log الاسم المستعار / doc / "/ usr / share / doc /" خيارات الفهارس MultiViews FollowSymLinks AllowOverride بلا أمر رفض

نقوم الآن بإنشاء مجلد اختبار في / var / www / folder (هنا ستكون هناك ملفات لمضيفنا الظاهري)
لقد أنشأنا تكوينًا لمضيفنا. لقد فقدت مضيفي الافتراضي. من أجله نقوم بإدخال الأمر:

اختبار سودو a2ensite

إعادة تحميل اباتشي نفسها:

إعادة تشغيل sudo /etc/init.d apache2

І كل ما لدينا من Virtualhost يعمل.
دعنا نضيف ملف / etc / hosts إلى اختبار الصف 127.0.0.1
الآن ، من خلال كتابة اختبار العنوان في المتصفح ، سنذهب إلى المضيف الظاهري على خادمنا المحلي.
على أي إعداد Virtualhost يكتمل على apache2. إذا كنت قد ألقت باللوم على الطعام ، فاكتب في التعليقات ، أنا obov'yazkovo عليهم.
ولا تنسى متابعة التحديثات على مدونتي ، دفع مبالغ زائدة

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

سنقوم بتوسيع أكبر عدد من المضيفين الظاهريين على أساس الأسماء (مضيفات افتراضية قائمة على الاسم) ، ملزمة بعنوان IP واحد. بهذه الطريقة ، يمكنك حفظ المواقع المجهولة على IP واحد.

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

في قبعة حمراء/CentOS/فيدورا:

/etc/httpd/conf/httpd.conf

ديبيان/أوبونتو:

/etc/apache2/apache2.conf

بطريقة أخرى ، جلد є vikoristannya vlashnya .confالملفات ، yakі owennі rozmіschuvatsya حسب التكلفة:

في قبعة حمراء/CentOS/فيدورا:

/etc/httpd/conf.d/filename.conf ،

ديبيان/أوبونتو:

/etc/apache2/conf.d/filename.conf.

كقاعدة عامة ، ملف التكوين httpd.confأو ملف apache2.confوزعت إدارة المضيفين الظاهريين roztashovuєtsya naprikintsi. لإضافة مضيف افتراضي ، ستحتاج إلى فتح الملف والتعليق عليه في ملف جديد (نظيف # ) التوجيه NameVirtualHost *: 80(دعوى * تعني "جميع أسماء المضيف"). هناك طريقة لوضع التكوين في أسيوط، ثم يتم تعيين التوجيه ليس ليتم التعليق عليه ، ولكن ليتم تعيينه في الملف الأكثر إنشاءًا.

بعد NameVirtualHostكتلة المقبل VirtualHost *: 80. كتل مماثلة لتكوين المضيفات الافتراضية الخاصة بك. كل شيء يبدو مثل هذا:

NameVirtualHost *: 80 AllowOverride All Options All ServerAdmin [بريد إلكتروني محمي] DocumentRoot /var/www/site1.ru ServerName site1.ru ServerAlias ​​www.site1.ru سجلات ErrorLog / site1.ru-error_log سجلات CustomLog / site1.ru-access_log الشائعة ServerAdmin [بريد إلكتروني محمي] DocumentRoot /var/www/site2.ru ServerName site2.ru ServerAlias ​​www.site2.ru سجلات ErrorLog / site2.ru-error_log سجلات CustomLog / site2.ru-access_log الشائعة

هنا يمكنك رؤية جميع إعدادات المضيفين الظاهريين ، بالإضافة إلى الاتصال أو تضمين خيارات الغناء.

دعنا نلقي نظرة فاحصة على ما تم تعيينه من التوجيه للجلد.

1. التوجيه ServerAdminحدد عنوان البريد الإلكتروني لمسؤول الخادم ، حيث تحتاج إلى الحصول على إعلامات من مضيف أي مسؤول.

2. التوجيه جذر المستنديشير إلى الدليل الجذر مع الملفات إلى الموقع ، والتي يمكن أن يراها خادم الويب للعميل (المتصفح).

3. التوجيه اسم الخادمعن طريق اختيار اسم المضيف ، ستظهر الملفات ، التي تم فرزها في DocumentRoot ، عند الطلب.

4. التوجيه سيرفر ألياسبمثابة اسم مضيف بديل للمضيف (الاسم المستعار ، الاسم المستعار) ، حيث يتم الرد على vin.

5. التوجيه ErrorLogتعيين ملفات بروتوكول العفو لمضيف الجلد ، و CustomLog- ملفات بروتوكولات عفو ريشتي وكريم.

قبل الحظر من المضيفين الظاهريين ، كما تتذكر ، هناك سجل آخر:

AllowOverride الكل

لديها علامات توجيهات polkaє perelіk (parametrіv) ، سوف kakі zastosovuvatisya إلى دليل محدد ، yak vkazuєtsya في الأطروحة ، scho vіdkrivaє. في المؤخرة أكثر - tse فار / شبكة الاتصالات العالمية /. صدر التوجيه السماح بالتجاوزحدد ملفات chi twist htaccessإذا كان الأمر كذلك ، فيمكن إعادة تعيين توجيهات خادم الويب العالمية في مثل هذه الملفات. بالنسبة للشخص المدبب ، هناك أهمية أكبر السماح بالتجاوزأدخل في الجميع، والذي يسمح بمعالجة ملفات .htaccess وجميع التوجيهات المحددة. المعاني المفيدة وغيرها من المعاني الممكنة:

AuthConfig- يسمح بتوجيهات المصادقة المخصصة (AuthDBMGroupFile ، AuthDBMUserFile ، AuthGroupFile ، AuthName ، AuthType ، AuthUserFile ، يتطلب ذلك).

معلومات الملف- يسمح بتخصيص التوجيهات التي تم تمييزها بواسطة أنواع المستندات (AddEncoding ، AddLanguage ، AddType ، DefaultType ، ErrorDocument ، LanguagePriority ، إلخ).

فهارس- يسمح بتوجيهات القرصنة لفهرسة الأدلة (AddDescription ، AddIcon ، AddIconByEncoding ، AddIconByType ، DefaultIcon ، DirectoryIndex ، FancyIndexing ، HeaderName ، IndexIgnore ، IndexOptions ، ReadmeName ، إلخ).

حد- يسمح بتحرير توجيهات التحكم في الوصول (السماح والرفض والنظام).

خيارات- يسمح بتخصيص التوجيهات ، والتي من خلالها يمكنك تعديل الميزات المحددة للدليل (خيارات و XBitHack).

هذه واحدة من العديد من التوجيهات الممكنة ، والتي يمكنك العثور عليها على موقع الويب الخاص بتجار التجزئة.

لحفظ التغييرات في الملف ، من الضروري إعادة التحقق من إعدادات العفو الجديدة. لإعادة التحقق ، يمكنك تحريف الأوامر التالية:

apachectl configtest apachectl -S apachectl -d

Yakshcho otrimano podomlennya " بناء الجملة موافق"، إذن ، لا يوجد عفو ويمكنك إعادة تحميل خادم الويب ، بحيث يتم حظر التغييرات. يمكنك القيام بذلك بمساعدة الفرق الهجومية:

ريد هات / سنتوس / فيدورا:

إعادة تشغيل خدمة httpd

/etc/init.d/ إعادة تشغيل httpd

ديبيان / أوبونتو:

إعادة تشغيل خدمة apache2

/etc/init.d/apache2 إعادة التشغيل

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

اسم الخادم الافتراضي DocumentRoot / var / www / default

في هذه المرتبة ، سيتم التغلب على كل الشرب الخاطئ بالمناسبة var / www / افتراضييمكنك إنشاء صفحة فهرس كتذكير بشأن الطلب الخاطئ.

لذلك ، لا يمكن لـ Apache الوصول إلى الدلائل الرئيسية الخاصة بك للتأمين ، ولكن الدليل فقط / var / www. إذا كنت تقوم بالقرصنة على خادم SElinux الخاص بك ، فعندئذٍ لمنح Apache وصولاً إلى أدلة منزلك ، غرد بالأوامر التالية:

Setsebool -P httpd_enable_homedirs 1

Setsebool -P apache2_enable_homedirs 1

من أجل وصول Apache mav إلى دليل sing ، على سبيل المثال ، إلى / الصفحة الرئيسية / mydirأمر الفوز التالي:

Chcon -R -t httpd_sys_content_t / home / mydir

Chcon -R -t apache2_sys_content_t / home / mydir

بمساعدة سيلينومن أجل وصول Apache إلى الدليل الرئيسي لموقعك ، ستحتاج إلى تعديل ملف التكوين يدويًا ( /etc/httpd/conf/httpd.confالخامس CentOS / فيدوراأو /etc/apache2/apache2.confالخامس دبيان / أوبونتو).

أدخل ملف التكوين لخادم الويب للتحرير ، وابحث عن الصف جذر المستند(بمساعدة المحرر nano يمكنك معرفة ذلك بمساعدة مجموعة من المفاتيح السيطرة + w). استبدل القيمة في الكفوف / var / www / htmlعلى المسار المطلق للدليل الرئيسي للموقع (على سبيل المثال ، /home/username/site.com). احفظ التعديلات وانظر من قائمة المحرر ( السيطرة + Oі السيطرة + X). أعد تشغيل Apache.

كيف يكون لديك نظام تشغيل مثبت على VPS الخاص بك دبيان / أوبونتو، ثم قم بتحرير الصف جذر المستندمطلوب للملف / etc / apache2 / sites-available / default. أدخل yogo لتحرير واستبدال القيمة القياسية / var / wwwعلى المسار المطلق للدليل الرئيسي للموقع. أعد تشغيل خادم الويب.

على هذه القاعدة ، اكتمل تثبيت المضيفين الظاهريين.

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

سنقوم بتوسيع أكبر عدد من المضيفين الظاهريين على أساس الأسماء (مضيفات افتراضية قائمة على الاسم) ، ملزمة بعنوان IP واحد. بهذه الطريقة ، يمكنك حفظ المواقع المجهولة على IP واحد.

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

في قبعة حمراء/CentOS/فيدورا:

/etc/httpd/conf/httpd.conf

ديبيان/أوبونتو:

/etc/apache2/apache2.conf

بطريقة أخرى ، جلد є vikoristannya vlashnya .confالملفات ، yakі owennі rozmіschuvatsya حسب التكلفة:

في قبعة حمراء/CentOS/فيدورا:

/etc/httpd/conf.d/filename.conf ،

ديبيان/أوبونتو:

/etc/apache2/conf.d/filename.conf.

كقاعدة عامة ، ملف التكوين httpd.confأو ملف apache2.confوزعت إدارة المضيفين الظاهريين roztashovuєtsya naprikintsi. لإضافة مضيف افتراضي ، ستحتاج إلى فتح الملف والتعليق عليه في ملف جديد (نظيف # ) التوجيه NameVirtualHost *: 80(دعوى * تعني "جميع أسماء المضيف"). هناك طريقة لوضع التكوين في أسيوط، ثم يتم تعيين التوجيه ليس ليتم التعليق عليه ، ولكن ليتم تعيينه في الملف الأكثر إنشاءًا.

بعد NameVirtualHostكتلة المقبل VirtualHost *: 80. كتل مماثلة لتكوين المضيفات الافتراضية الخاصة بك. كل شيء يبدو مثل هذا:

NameVirtualHost *: 80 AllowOverride All Options All ServerAdmin [بريد إلكتروني محمي] DocumentRoot /var/www/site1.ru ServerName site1.ru ServerAlias ​​www.site1.ru سجلات ErrorLog / site1.ru-error_log سجلات CustomLog / site1.ru-access_log الشائعة ServerAdmin [بريد إلكتروني محمي] DocumentRoot /var/www/site2.ru ServerName site2.ru ServerAlias ​​www.site2.ru سجلات ErrorLog / site2.ru-error_log سجلات CustomLog / site2.ru-access_log الشائعة

هنا يمكنك رؤية جميع إعدادات المضيفين الظاهريين ، بالإضافة إلى الاتصال أو تضمين خيارات الغناء.

دعنا نلقي نظرة فاحصة على ما تم تعيينه من التوجيه للجلد.

1. التوجيه ServerAdminحدد عنوان البريد الإلكتروني لمسؤول الخادم ، حيث تحتاج إلى الحصول على إعلامات من مضيف أي مسؤول.

2. التوجيه جذر المستنديشير إلى الدليل الجذر مع الملفات إلى الموقع ، والتي يمكن أن يراها خادم الويب للعميل (المتصفح).

3. التوجيه اسم الخادمعن طريق اختيار اسم المضيف ، ستظهر الملفات ، التي تم فرزها في DocumentRoot ، عند الطلب.

4. التوجيه سيرفر ألياسبمثابة اسم مضيف بديل للمضيف (الاسم المستعار ، الاسم المستعار) ، حيث يتم الرد على vin.

5. التوجيه ErrorLogتعيين ملفات بروتوكول العفو لمضيف الجلد ، و CustomLog- ملفات بروتوكولات عفو ريشتي وكريم.

قبل الحظر من المضيفين الظاهريين ، كما تتذكر ، هناك سجل آخر:

AllowOverride الكل

لديها علامات توجيهات polkaє perelіk (parametrіv) ، سوف kakі zastosovuvatisya إلى دليل محدد ، yak vkazuєtsya في الأطروحة ، scho vіdkrivaє. في المؤخرة أكثر - tse فار / شبكة الاتصالات العالمية /. صدر التوجيه السماح بالتجاوزحدد ملفات chi twist htaccessإذا كان الأمر كذلك ، فيمكن إعادة تعيين توجيهات خادم الويب العالمية في مثل هذه الملفات. بالنسبة للشخص المدبب ، هناك أهمية أكبر السماح بالتجاوزأدخل في الجميع، والذي يسمح بمعالجة ملفات .htaccess وجميع التوجيهات المحددة. المعاني المفيدة وغيرها من المعاني الممكنة:

AuthConfig- يسمح بتوجيهات المصادقة المخصصة (AuthDBMGroupFile ، AuthDBMUserFile ، AuthGroupFile ، AuthName ، AuthType ، AuthUserFile ، يتطلب ذلك).

معلومات الملف- يسمح بتخصيص التوجيهات التي تم تمييزها بواسطة أنواع المستندات (AddEncoding ، AddLanguage ، AddType ، DefaultType ، ErrorDocument ، LanguagePriority ، إلخ).

فهارس- يسمح بتوجيهات القرصنة لفهرسة الأدلة (AddDescription ، AddIcon ، AddIconByEncoding ، AddIconByType ، DefaultIcon ، DirectoryIndex ، FancyIndexing ، HeaderName ، IndexIgnore ، IndexOptions ، ReadmeName ، إلخ).

حد- يسمح بتحرير توجيهات التحكم في الوصول (السماح والرفض والنظام).

خيارات- يسمح بتخصيص التوجيهات ، والتي من خلالها يمكنك تعديل الميزات المحددة للدليل (خيارات و XBitHack).

هذه واحدة من العديد من التوجيهات الممكنة ، والتي يمكنك العثور عليها على موقع الويب الخاص بتجار التجزئة.

لحفظ التغييرات في الملف ، من الضروري إعادة التحقق من إعدادات العفو الجديدة. لإعادة التحقق ، يمكنك تحريف الأوامر التالية:

apachectl configtest apachectl -S apachectl -d

Yakshcho otrimano podomlennya " بناء الجملة موافق"، إذن ، لا يوجد عفو ويمكنك إعادة تحميل خادم الويب ، بحيث يتم حظر التغييرات. يمكنك القيام بذلك بمساعدة الفرق الهجومية:

ريد هات / سنتوس / فيدورا:

إعادة تشغيل خدمة httpd

/etc/init.d/ إعادة تشغيل httpd

ديبيان / أوبونتو:

إعادة تشغيل خدمة apache2

/etc/init.d/apache2 إعادة التشغيل

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

اسم الخادم الافتراضي DocumentRoot / var / www / default

في هذه المرتبة ، سيتم التغلب على كل الشرب الخاطئ بالمناسبة var / www / افتراضييمكنك إنشاء صفحة فهرس كتذكير بشأن الطلب الخاطئ.

لذلك ، لا يمكن لـ Apache الوصول إلى الدلائل الرئيسية الخاصة بك للتأمين ، ولكن الدليل فقط / var / www. إذا كنت تقوم بالقرصنة على خادم SElinux الخاص بك ، فعندئذٍ لمنح Apache وصولاً إلى أدلة منزلك ، غرد بالأوامر التالية:

Setsebool -P httpd_enable_homedirs 1

Setsebool -P apache2_enable_homedirs 1

من أجل وصول Apache mav إلى دليل sing ، على سبيل المثال ، إلى / الصفحة الرئيسية / mydirأمر الفوز التالي:

Chcon -R -t httpd_sys_content_t / home / mydir

Chcon -R -t apache2_sys_content_t / home / mydir

بمساعدة سيلينومن أجل وصول Apache إلى الدليل الرئيسي لموقعك ، ستحتاج إلى تعديل ملف التكوين يدويًا ( /etc/httpd/conf/httpd.confالخامس CentOS / فيدوراأو /etc/apache2/apache2.confالخامس دبيان / أوبونتو).

أدخل ملف التكوين لخادم الويب للتحرير ، وابحث عن الصف جذر المستند(بمساعدة المحرر nano يمكنك معرفة ذلك بمساعدة مجموعة من المفاتيح السيطرة + w). استبدل القيمة في الكفوف / var / www / htmlعلى المسار المطلق للدليل الرئيسي للموقع (على سبيل المثال ، /home/username/site.com). احفظ التعديلات وانظر من قائمة المحرر ( السيطرة + Oі السيطرة + X). أعد تشغيل Apache.

كيف يكون لديك نظام تشغيل مثبت على VPS الخاص بك دبيان / أوبونتو، ثم قم بتحرير الصف جذر المستندمطلوب للملف / etc / apache2 / sites-available / default. أدخل yogo لتحرير واستبدال القيمة القياسية / var / wwwعلى المسار المطلق للدليل الرئيسي للموقع. أعد تشغيل خادم الويب.

على هذه القاعدة ، اكتمل تثبيت المضيفين الظاهريين.

في tsіy zamittsі mova pіde pro إعداد مضيفات أباتشي الافتراضيةتحت Windows. سأخبرك ما هو شكل المضيفين الظاهريين ، ولماذا الرائحة الكريهة vikoristovuyutsya. يتم إضافة الرسوم التوضيحية التفصيلية.

استضافة افتراضية. الفهم الأساسي.

مرة أخرى ، من الضروري فهم ماهية الاستضافة الافتراضية:

استضافة افتراضيةعمل- هذه التكنولوجيا ، التي من خلالها يمكن لخادم الويب أن يفوز على جهاز كمبيوتر واحد ببعض أسماء المجالات.

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

المضيفين الظاهريهناك نوعان:

  • مضيفات افتراضية على أساس الأسماء ( بالاسم);
  • المضيفون الظاهريون بناءً على عنوان IP للكمبيوتر ( IP على أساس).

سنفوز بالخيار الأول - المضيفات الافتراضية القائمة على الاسم.

إعداد مضيفات Apache الافتراضية.

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

افتح الملف في المفكرة. Shukaєmo ويمكنك رؤية التعليق في الجزء الخلفي من الصف ، كما هو موضح أدناه:

# مضيفات افتراضية
قم بتضمين conf / extra / httpd-vhosts.conf

يربط هذا الصف المعلمات الموضحة في الملف أسيوط / اضافية / httpd-vhosts.conf.

النحو للطي مضيف افتراضي قائم على الاسم:


مسار DocumentRoot إلى الموقع
اسم الخادم اسم الموقع

يحتوي ملف vhosts على مرفقات. نحن لسنا بحاجة للرائحة الكريهة. نحن فقط نراه ونستبدل الاختبار الهجومي:

#
# مضيفات افتراضية
#
# هنا يمكنك قراءة المزيد حول ضبط المضيفين الظاهريين
#
#

#
# استخدم الاستضافة الافتراضية القائمة على الاسم.
#
NameVirtualHost *: 80

# هنا يمكنك كتابة المسار إلى ملفات الموقع (DocumentRoot) واسم المضيف (ServerName)

DocumentRoot في: / www / test
اختبار ServerName

الآن قم بإنشاء مجلد على محرك الأقراص C: wwwأنا إلى مجلد جديد امتحان. انتبه إلى حقيقة أن Windows يحتوي على خطوط مائلة عكسية وأن ملف التكوين يحتوي على /.

من الضروري الآن إعادة النظر إلى أباتشي من أجل تحسين الفروسية.

دعنا نمضي قدمًا ونخبر Windows عن إنشاء مضيفات افتراضية. لمن يعرف الملف C: / Windows / system32 / drivers / etc / hosts. Vіdkrivaєmo yogo بمساعدة مفكرة رائعة وأضف صفًا متقدمًا هناك:

127.0.0.1 هو عنوان IP لجهاز الكمبيوتر الخاص بك. على التوالي ، أخبرنا Windows أن الموقع موجود على عنوان IP هذا امتحان.

إذا أنشأت ، على سبيل المثال ، مضيفًا افتراضيًا آخر ، فيمكنك إضافة صف آخر:

127.0.0.1 اسم المضيف الظاهري الخاص بك

الآن من الضروري إعادة النظر في ما تم تعديله بشكل صحيح. لمن نخلق مع بابا ج: / www / testملف index.phpواكتب الكود التالي هناك:

نكتب على عنوان URL للمتصفح http: // test. إذا كنت قد فعلت كل شيء بشكل صحيح ، فغنيها لخطتالت:

إذا لم تضرب شخصًا ما ، فأنت لا تقع فيه - نكتب في التعليقات. معًا يمكننا حل أي مشكلة 😉

في المقال الأول ، اكتشفنا كيفية تثبيت apache. الآن دعنا نلقي نظرة على كيفية إنشاء مضيف افتراضي على apache وكيفية تكوين مضيفات apache windows الافتراضية.

لذلك دعونا نتعرف على ما نحتاجه لمضيف افتراضي. بمجرد تثبيت apache ، يمكننا البدء مرة أخرى عن طريق كتابة localhost في المتصفح. وأرغب في ذلك ، حتى نتمكن من المحاولة على خادم بعض المواقع والوصول إليها عن طريق عنوان url الصحيح. يمكن للمرء أن يكون zrobleno على اباتشي إنشاء مضيفات افتراضية. بالنسبة إلى قطعة خبز ، فلنقم بإنشاء المؤخرة في مجلد محرك الأقراص C "www.Zametki". المجلد C: يحتوي Zametki على ثلاثة مجلدات conf و htdocs و logs و Errors. في مجلد conf ، نقوم بإنشاء ملف zametki.conf. افتح الملف С: \ www.Zametki \ conf \ zametki.conf وقم بوصف مضيفنا الافتراضي:

#VirtualHost zametki & ltVirtualHost *: 80> # تكوين الخادم ServerName www.zametki ServerAlias ​​zametki ServerAdmin [بريد إلكتروني محمي]#Server logs ErrorLog "c: /www.Zametki/logs/error.log" CustomLog "c: /www.Zametki/logs/access.log" common #DocumentRoot "c: /www.Zametki/htdocs" & ltDirectory "w: /www.Zametki/htdocs "> خيارات الفهارس FollowSymLinks AllowOverride All Order deny، allow Allow from all & lt / Directory> & lt / VirtualHost>

خذ ملف noteki.conf. الآن فقدنا اتصالنا بملف تكوين الخادم الرئيسي httpd.conf. يقع Vin في C: \ Program Files \ Apache Software Foundation \ Apache2.2 \ conf. يوغا Vidkrivaєmo وللحصول على قطعة خبز أضف إلى أسفل الملف:

NameVirtualHost *: 80 & ltVirtualHost *: 80> ServerName localhost ServerAdmin [بريد إلكتروني محمي]& lt / VirtualHost>

أنشأنا مضيفًا افتراضيًا للترقيات. الآن يمكننا ربط إبداعات مضيفنا. نكتب في نفس الملف في أسفل المستند:

# www.zametki تضمين "c: /www.zametki/conf/zametki.conf"

الآن ليس علينا إنشاء إدخال حول مضيفنا في ملف المضيفين على العنوان C: WINDOWSsystem32driversetc. سوف تستبدل خادم DNS.

// دخول قفل windows 127.0.0.1 localhost // إدخالنا 127.0.0.1 zametki www.zametki

إنشاء مجلد ظاهري اباتشي

لإنشاء تقنية افتراضية ، لدينا توجيه اسم مستعار. لنقم بإنشاء مجلد لحفظ الملفات باستخدام Apache pardons. تمت الإضافة إلى ملف zametki.conf والتوجيه & ltVirtualHost> ... & lt / VirtualHost> لمضيفنا الظاهري التالي:

# مجلد به تذكيرات حول العفو // تعيين اسم مستعار (اسم مستعار) للمجلد Alias ​​/ err / "c: /www.Zametki/Errors/" & ltDirectory "c: /www.Zametki/Errors /"> خيارات الفهارس FollowSymLinks AllowOverride رفض كل الطلبات ، اسمح بالسماح من الكل & lt / Directory>

إنشاء الجوانب الخاصة بك مع عفو أباتشي

للحصول على معلومات حول العفو ، يرجى إرسال توجيه ErrorDocument. لنقم بإنشاء مجلد c: /www.Notes/Errors/ على سبيل المثال 404.html. ستكون هذه هي صفحة html الخاصة بنا ، والتي سيتم عرضها عند مسح خادم 404. سنضيف الصفوف التالية إلى ملف zametki.conf:

# عفو تحذير ErrorDocument 404 /err/404.html

مقالات مماثلة