وب کانفیگ (web config) چیست؟
آیا میدانید فایل وب کانفیگ چیست؟ یا تا به حال از آن استفاده کردهاید؟ همواره از زمانی که وبسایتها بهصورت داینامیک درآمدهاند، مدیران آنان به دنبال راههایی برای مدیریت بهتر روی کل سایت و در نهایت افزایش امنیت به حداکثر ممکن هستند؛ زیرا هر روزه ممکن است هکران زیادی بخواهند به وبسایت شما نفوذ پیدا کنند که در صورت عدم آمادگی، قطعاً ضررهای سنگینی خواهید دید. فایل وب کانفیگ یکی از چیزهایی است که در این زمینه حتماً باید به کار گیرید تا با اجرای دستوراتی مناسب، امنیت خودتان را بالا ببرید.
در این مقاله از سایت مهدی عراقی قصد داریم بگوییم فایل وب کانفیگ چیست و نحوه استفاده از آن چگونه است.
فایل وب کانفیگ چیست؟
تا قبل از ورود وب 2 و پویا شدن وبسایتها، مدیران آنان تا این حد نگران تأمین امنیت وبسایت خودشان نبودند زیرا عملاً با قالبهای استاتیک که با زبان html و css زده میشد، امکان به وجود آمدن باگهای مختلف وجود نداشت.
اما پس از رشد روزافزون دنیای وب و ارائه تکنولوژیهای حرفهای در این زمینه، به مرور زمان وبسایتها به سمت استفاده از زبانهای تحت وب رفتند و همین موضوع سبب شد که به مرور زمان به خاطر یکسری اشتباهات کوچک، باگهای امنیتی زیادی ایجاد شود و در نهایت هکرها فرصت را مناسب دیدند و وارد بازی شدند.
اما امروزه برای مقابله با این خطرات، راههای گوناگونی وجود دارد یکی از این راهها، فایل وب کانفیگ است؛ احتمال نام آن را در جاهای مختلف شنیده باشید.
بهصورت کلی در این فایل، یکسری اطلاعات ضروری راجع به وبسایت و پیکربندی آن قرار میگیرد و کسانی که از وب سرور iis استفاده میکنند، حتماً باید با آن آشنا باشند زیرا به وفور با آن کار خواهند داشت.
اگر تا به حال بهصورت حرفهای به برنامهنویسی زبان ASP مشغول بوده باشید، حتماً میدانید که فایل وب کانفیگ چقدر مهم است و در طول پروژه به کارتان میآید؛ اما اگر تا به حال اینکار را نکردهاید، باید بگوییم که این فایل دارای انعطاف پذیری بسیار بالایی است بهصورتی که با آن میتوان تقریباً هر گونه سطح دسترسی افراد مختلف را مدیریت کرد و در نهایت یک پروژه حرفهای و امن به وجود آورد.
هنگامی که شما بخواهید تغییراتی روی وب سرورهای IIS انجام دهید، اطلاعات و تغییرات امنیتی شما باید در یک فایل XML ذخیره شوند تا هروقت که خواستید به آنان دسترسی داشته باشید و از طرفی دیگر قابل استفاده شوند. این فایل در زبان ASP بهعنوان وب کانفیگ شناخته میشود که دارای اهمیت زیادی برای برنامهنویسان است و به کمک آن قدرت مدیریت زیادی خواهید داشت و همواره باید آن را نظارت کنید تا چیزهای اشتباهی درونش قرار نگیرد.
بهصورت کلی عملکرد این فایل اینگونه است که در هر دایرکتوری که قرار بگیرد، روی آن اثر خواهد گذاشت؛ بهعنوانمثال اگر ما این فایل را در صفحه اصلی مهدی عراقی قرار دهیم (https://mahdiaraqi.com) روی این پوشه اثر میگذارد و اگر در مسیر دیگر قرار گیرد، اثراتش هم به همان صورت متفاوت خواهد بود؛ اما بهصورت کلی برای عملکرد درست و بهینه این فایل، معمولاً آن را در ریشه اصلی دامنه قرار میدهند.
نکته مهمی که وجود دارد این است که فایل وب کانفیگ که پسوند XML دارد، صرفاً در سرورهای ویندوز قابلاجراست و شما نمیتوانید مانند فایلهایی مانند html یا txt آنان را به کمک هر نرمافزاری ویرایش کنید و تغییر بدهید.
یکی از اصلیترین مزیتهایی که اعمال تغییرات از طریق این فایل دارد این است که شما نیازی به ریستارت نرمافزار برای دیدن تغییرات نخواهید داشت؛ درواقع بهعنوان یک برنامهنویس، شما دائماً در حال تست کردن دستورات مختلف بر روی وبسایت خواهید بود و اگر لازم باشد پس از هر تغییر برنامه را ریستارت کنید، درصد عظیمی از وقتتان از دست خواهد رفت.
اما در سرورهای ویندوز و به کمک فایل وب کانفیگ، دیگر چنین چیزی لازم نیست و شما بلافاصله پس از اعمال تغییرات، میتوانید تأثیرات آن در وبسایت را مشاهده کنید.
در تعریف کلی، فایل وب کانفیگ، فایلی است که در سرورهای ویندوز به شما اجازه میدهد که نحوه رفتار با یک بخش خاص از سایت را تعیین کنید و بهعنوانمثال بگویید که اگر فردی وارد دایرکتوری x شد، چه اتفاقاتی بی افتد. تأثیرات این فایل نیز صرفاً در مکانهایی است که شما آن را قرار میدهید و اگر در یک دایرکتوری خاص قرار گیرد، صرفاً تنظیمات روی آن اعمال خواهند شد و شما نمیتوانید دستوراتی برای مدیریت بقیه بخشهای سایت اعمال کنید.
کاربرد فایل web config چیست؟
بهصورت کلی هنگامیکه بخواهید یک وبسایت را در یک سرور ویندوزی بالا بیاورید، باید در ریشه آن حداقل یک فایل وب کانفیگ قرار داشته باشد تا یکسری تنظیمات پیشفرض اعمال شود، در غیر این صورت وبسایت شما به درستی بالا نخواهد آمد.
اهمیت این فایل در اجرای یک وبسایت بهشدت بالاست زیرا به کمک آن میتوان دسترسیهای مختلف را مشخص کرد و جلوی یکسری اقدامات مخرب را پیش از اجرا گرفت. نکته مهمی که وجود دارد این است که معمولاً برنامهنویسان برای اینکه به اهداف خودشان برسند به یک وب کانفیگ قناعت نمیکنند و در هر دایرکتوری که نیاز باشد، یکی از آنان را خواهند ساخت.
درواقع شما نمیتوانید به کمک یکی از این فایلها، در تمامی دایرکتوریها تغییراتی که میخواهید را اعمال کنید؛ مثلاً اگر هدف شما تعیین دسترسی در ریشه دامنه باشد، باید در آن قسمت یک فایل وب کانفیگ بسازید، اما اگر میخواهید در یک زیر دامنه مانند (domain.com/directory)به نظارت بپردازید، باید در آن قسمت یک فایل جداگانه ایجاد کنید که باعث میشود علاوه بر راحتتر شدن کارتان، جلوی دسترسی افراد دیگر با بهتمامی تنظیمات اعمالشده بگیرید.
فایل وب کانفیگ چه ساختاری دارد؟
اگر تابهحال با سرورهای لینوکس کارکرده باشید، حتماً میدانید که یک فایل به نام htaccess در آنان وجود دارد به کمک آن میتوانید به مدیریت بخشهای مختلف وبسایت و فعالسازی و غیرفعال سازی ویژگیهای مختلف بپردازید؛ درواقع فایل وب کانفیگ نیز تقریباً مشابه آن است و دارای دو تگ پیشفرض است که حتماً باید استفاده شوند.
web config چه تگهای مهمی دارد؟
حالا که متوجه شدید فایل وب کانفیگ چیست و چه تأثیراتی در وبسایت دارد، نوبت آن است که با یکسری تگهای مهم که در آن وجود دارند آشنا شوید تا بهمرورزمان و افزایش مهارتتان، از آنان برای بهینهسازی بیشتر بهره بگیرید.
در زیر این تگها را مشاهده میکنید:
- تگ لوکیشن (location):این دستور برای زمانی است که شما میخواهید فایلهای موردنظرتان صرفاً در یکسری دایرکتوریهای خاص فعال باشند و در دسترس قرار بگیرند.
- تگ(culture): این تگ کاربرد جالبی دارد و در آن میتوانید یکسری فرهنگهای کاربردی که در وبسایت استفاده میشوند را تعیین کنید.
- Requestencoding: به کمک این تگ شما میتوانید نحوه انکود رشتهها را تعیین، و شکل موردنظرتان را برای آنان را انتخاب کنید. بهعنوانمثال هنگامیکه بخواهید وبسایت شما فارسی را پشتیبانی کند، باید رشتهها را به روش utf8 انکود کنید در غیر این صورت متنهای نمایش دادهشده فارسی، بههمریخته و بهصورت حروف ناخوانا خواهند بود
- تگهایی که برای امنیت به کار میروند: این تگها همانطور که از نامشان نیز مشخص است، برای مواقعی به کار میروند که شما قصد دارید یکسری سیاستهای امنیتی خاصی وضع کنید؛ بهعنوانمثال هنگامیکه میخواهید از دسترسی یک آیپی به بخشی از وبسایت جلوگیری نمایید، این تگها به کارتان میآیند.
- تگ(mode): یکی از اصلیترین کارهایی که یک برنامهنویس و مدیر سایت باید بتواند انجام دهد، شناسایی دقیق خطاها و درنهایت رفع آنان است. به کمک این تگ میتوانید تعیین کنید که وبسایت در چه حالتی قرار داشته باشد و در هر حالت، یکسری ویژگیهای خاص فعال خواهند بود.
- Defaultredirect: درواقع هنگامیکه سایت دارای خطایی باشد، شما دوست ندارید که کاربر به صفحهای نامناسب و غیر مرتبط روبرو شود. ازاینرو به کمک این تگ میتوانید تعیین کنید که کاربران در چنین مواقعی به کدام قسمت سایت ریدایرکت شوند؛ مثلاً میتوانید یک صفحه بسازید که قرمز است و میگوید که سایت دارای مشکلاتی است.
جمعبندی و نتیجه گیری
بهصورت کلی فایل وب کانفیگ، فایلی است که در سرورهای ویندوزی مورداستفاده قرار میگیرد تا تعیین شود که با دایرکتوریهای موجود در یک دامنه چگونه رفتار شود و از این طریق امنیت وبسایت بالاتر برود.
اگر از سرورهای ویندوز استفاده میکنید، این فایل دارای اهمیت بسیاری در سئو تکنیکال است و اگر آن را بهدرستی تنظیم نکنید، علاوه بر سئو، ازنظر امنیتی نیز تحت خطر خواهید بود و ممکن است مورد نفوذ قرار گیرید.
در این مقاله از سایت مهدی عراقی سعی کردیم بگوییم فایل وب کانفیگ چیست و تأثیرات آن در وبسایت کدام است.
نظر شما چیست؟ آیا تابهحال با این فایل کارکردهاید؟ تأثیرات آن برایتان چه بوده است؟ خیلی خوشحال میشویم نظراتتان را در بخش کامنتها بنویسید.