سرور مجازی لهستان با ترافیک نامحدود

۲۰ نکته مهم در مورد وب سرور آپاچی

هاست هی بیش از ۸ سال سابقه فعال + نماد دائم اعتماد الکترونیک | خدمات حرفه ای میزبانی وب، سرور مجازی، سروراختصاصی، مدیریت سرور، لایسنس
هاست لینوکس,هاست ویندوز,هاست پلسک,هاست دایرکت ادمین,هاست دانلود,سرور مجازی,سرور مجازی SSD,سرور مجازی پر سرعت,هاست پر بازدید,هاست ایران,سرور مدیریت شده

امروز در این مقاله قصد داریم به ۲۰ نکته اساسی در مورد وب سرور آپاچی بپردازیم اما قبلش اگر نمیداند وب سرور چی هست و چه کاری انجام میدهند این مقاله را مطالعه کنید:

وب سرور آپاچی یکی از قدیمی ترین وب سرور ها میباشد که نزدیک به ۵۰ درصد وب سایت ها از این وب سرور استفاده میکنند که تعریف خیلی کاملی بخواهیم از این وب سرور داشته باشیم که بتوانیم از آن به عنوان نکته اول یاد کنیم:

۲۰ نکته مهم در مورد وب سرور آپاچی:

۱.وب سرور آپاچی دقیقا چیست؟

آپاچی یکی از معروف ترین و قدرتمند ترین وب سرور های جهان میباشد که بصورت متن باز برای میزبانی فایل ها و صفحات وب در بستر اینترنت و شبکه ارائه شده است. این وب سرور بر پایه پروتکل HTTP یا همان Hyper Text Transfer که یک استاندارد ارتباطی بین Server و Client است سرویس دهی میکند. این وب سرور از SSL، فایل های CGI و دیگر امکانات پشتیبانی میکند.

این وب سرور محبوب  معایب و مزایایی دارد که در مقاله ای جدا انشالله به ان خواهیم پرداخت اما قبل ازینکار یک سری نکات کلیدی را بد نیست در مورد این سرور بدانیم که بسیار به ما در شناخت و مدیریت این وب سرور کمک میکند.

۲.چگونه میتوانیم بفهمیم چه ورژنی از آپاچی روی سرور نصب شده است؟

برای فهمیدن اینکه چه نسخه ای از آپاچی دقیقا روی سرور نصب شده است دو دستور وجود دارد که میبایست این دستورات را در محیط کامندی سرور وارد کنید.

دستور اول از لیست پکیج ها نصب شده میتوانید متوجه شوید پکیج نصب شده چه ورژنی دارد:

rpm -qa | grep httpd

دستور دوم: این سوال را از خود اپاچی میتوانید بپرسید!‌

httpd -v

۳.تنظیمات آپاچی در چه مسیری قرار دارد و تحت چه مجوزی روی سرور اجرا میشود؟

در سیستم عامل لینوکس میتوانید فایل کانفیگ سرویس ها را در مسیر /etc پیدا کنید که اپاچی هم مستثنی نبوده و در همین مسیر میتوانید به کانفیگ هایش دسترسی پیدا کنید.

مسیر فایل کانفیگ آپاچی در توزیع های برپایه رد هت مانند سنتوس و فدورا

etc/httpd/conf/httpd.conf/

جدیدا دیگر اسم پوشه httpd نبوده و به apache2 تغییر نام پیدا کرده است.

در توضیح های بر پایه دبیان مانند ابونتو مسیر زیر:

/etc/apache2/apache2.conf

آپاچی تحت یوزر nobody اجرا میشود.

۴.پورت پیش فرض در پروتکل های http و https در آپاچی چیست؟

اپاچی طبق استاندارد برای httpاز پورت ۸۰ و برای https از پورت ۴۴۳ استفاده میکند که شما قادر هستید پورت ها را تغییر دهید.

۵.آپاچی را برروی تمام توزیع های لینوکسی میتوان نصب کرد؟ نصب آن چگونه است؟

شما آپاچی را برروی تمامی توزیع های لینوکس حتی دیگر سیستم عامل ها مثل ویندوز و مک او اس میتوانید نصب کنید

برای نصب آپاچی در توزیع های برپایه ردهت مثل سنتوس و فدورا از دستور زیر میتوانید استفاده کنید:

yum install httpd

و برای نصب در توزیع های بر پایه دبیان مثل ابونتو با دستور زیر:

apt-get install apache2

توجه کنید اگر با یوزر روت وارد نشده اید میباست ابتدا دستور sudo اضافه کنید.

۶.مسیر پیش فرض کانفیگ آپاچی کجاست؟

همانطور که قبلا اشاره کردیم معمولا در لینوکس فایل های کانفیگ سرویس ها را میتوانید در مسیر /etc پیدا کنید.

مسیر پیشفرض کانفیگ آپاچی در توزیع های بر پایه رد هت مانند سنتوس و فدورا:

/etc/httpd

در توزیع های بر پایه دبیان مانند ابونتو:

/etc/apache2

۷.در آپاچی میتوانیم از TCP Wrapper استفاده کنیم و آن را امن کنیم؟

متاسفانه کتابخانه libwrap.a در لینوکس پشتیبانی نمیگردد و نمیتوان آن را با استفاده از این کتابخانه امن نمود.

۸.آیا میتوان پورت پیش فرض آپاچی را تغییر داد؟ چگونه؟

پاسخ بله است.

برای تغییر کافیست فایل کانفیگ آپاچی که مسیرش را در بالاتر گفته ایم ادیت کنید و پارامتر Listen مربوط به http و https را تغییر دهید.

۹.میتوان چند اپاچی به صورت همزمان روی یک سرور اجرا کرد؟

پاسخ بله است کافیست پورت های پیشفرض را تغییر دهید که اختلال از نظر پورت مشابه رخ ندهد.

۱۰.پارامتر DocumentRoot در فایل کانفیگ چیست؟

DocumentRoot در واقع مسیر پیش فرض که صفجه وب شما آنجا لود میگردد.

به صورت پیش فرض DocumentRoot روی مسیر /var/www/html ست شده است که میتوانید آن را تغییر دهید و برای هر دامنه یک DocumentRoot جدا داشته باشید.

۱۱.DirectoryIndex دقیقا چیست و چه کاری انجام میدهد؟

زمانی که شما درخواست خود را به سمت سرور ارسال میکنید وب سرور به دنبال فایل فراخوان و فایل ایندکس صفحه شما میگردد که معمولا با نام های index.html یا index.php میباشد. در واقع DirectoryIndex اولین فایلیست که وب سرور ترجمه و خروجی html آن را به کاربر نشان میدهد.

۱۲.اگر ایندکس وجود نداشته باشد چه چیزی لود میگردد؟

فرض رو بر این بگیرید ما فایلی با نام index.php یا index.html نداریم وب سرور چه چیزی را برای ما لود میکند ؟

در این گونه مواقع رفتار وب سرور به این شکل هست که لیست فایل ها را به ما نمایش میدهد که به آن به اصطلاح Directory listing هم میگویند.

اگر میخواهید لیست فایل ها و فولدر های شما مشاهده نشود یا یک فایل ایندکس ایجاد کنید یا از کد زیر در کانفیگ داکیومنت روت یا htaccess استفاده کنید.

Options -Indexes

۱۳.گزارشات یا لاگ های آپاچی در چه مسیری ذخیره شده و با چه نامی میباشد؟

لاگ های پیش فرض آپاچی به صورت زیر میباشد:

اگر خطایی رخ دهد در فایل error_log

اگر درخواستی به سمت سرور ارسال گردد و بدون مشکل پاسخ بگیرد در فایل

access_log

این دو فایل در مسیر زیر ذخیره میگردند.

/var/

/var/log/httpd/

۱۴.خطای معروف “Connection reset by peer” در ارور لاگ آپاچی به چه معنا میباشد؟

زمانی که شما دارید به سمت وب سرور درخواست ارسال میکنید و قبل از پاسخ گرفتن صحفه را بسته و درخواست خود را قطع میکنید باعث رخ دادن این خطا میگردد.

۱۵.منظور از virtual host چیست؟

در بالاتر اشاره کردیم که DocumentRoot اشاره میکند به محلی که فایل های وب شما از آنجا لود میگردد برای هر وب سایت میتوانید یک DocumentRoot جدا داشته باشید که این کار با virtual host ممکن هست

با virtual host میتوانید روی آپاچی دامین های مختلفی با DocumentRoot ها و تنظیمات اختصاصی خود داشته باشید یعنی توسط اپاچی و یک پورت میتوانید تعداد زیادی دامنه را میزبانی کنید.

۱۶.تفاوت دو پارامتر Location و Directoryدر چیست ؟

Location پارامتر مربوط به ادرس های اینترنتی یا URL میباشد و Directory مربوط به محل قرار گیری فایل ها و فولدر ها میباشد.

۱۷.virtual hosting چیست ؟

در بالا اشاره کردیم زمانی که بخواهید با یک ای پی و یک پورت تعداد زیادی هاست داشته باشید مفهوم virtual hosting به میان می آید و میتوانید تعداد زیادی دامنه با فایل های اختصاصی خود میزبانی کنید.

۱۸.MPM دقیقا چیست و چه کاری انجام میدهد؟ انواع آن چیست ؟

MPM خلاصه شده Multi Processing Modules میباشد که در واقع یک مکانزیم خواست برای پاسخگویی به درخواست های ارسال شده به سمت سرور میباشد که انواع مختلفی دارد که انشالله یک پست جدا به بررسی ان ها میپردازیم.

انواع MPM ها (معروف ترین  آن ها ) :

  • MPM Worker
  • MPM Event
  • MPM Prefork

بهترین در میان سه گزینه بالا Worker میباشد که بعدا به بررسی آن میپردازیم.

۱۹.LimitRequestBody چه کاری انجام میدهد؟

این پارامتر یک پارامتر مهم و به درد بخور برای دوستانی که سرور دانلود دارند میباشد توسط این پارامتر میتوانید محدودیت حجمی برای دانلود اعمال کنید.

۲۰.جلوگیری از حملات DDoS؟ ماژول Mod_evasive آیا کارامد است؟

Mod_evasive یک ماژول امنیتی میباشد که برای حملات دی داس بسیار کارامد میتواند باشد.همچنین به صورت پیش فرض در آپاچی نصب نبوده و میباست آن را نصب کنید.