تغییر پسوند اسکریپت ها در سرور راه بسیار مناسبی جهت بالا بردن امنیت است. این تغییر پسوند را ما در فایل های PHP بررسی می کنیم. یعنی کاری می کنیم که بازدیدکنندگان از سرور ما امکان تشخیص این که ما از چه برنامه ای برای تولید یک صفحه ی پویا استفاده کرده ایم ، وجود نداشته باشد. این موضوع بحث اصلی ماست!
 این کار به دو روش انجام می گیرد :
 1- تغییر پسوند فایل های PHP به چیزی دیگر
 2- حذف پسوند های PHP برای پردازش
 در روش اول با یک مثال کار را آغاز می کنیم. برای مثال فرض کنید در سایتی شما یک صفحه با آدرس example.com/index.bs مشاهده می کنید آیا می توانید تشخیص دهید که این سایت از چه برنامه ای برای پردازش فایل های خود استفاده می کند ؟ مسلما جواب شما خیر خواهد بود چون انتخاب یک زبان مشخصی از میان زبان های تولید محتوای پویا برای این صفحه غیر ممکن است. در واقع ما می توانیم احتمال دهیم که این فایل در واقع index.php بوده و مدیر سرور برای افزایش امنیت و جلوگیری از اینکه کاربران نتوانند زبان پویای مورد استفاده در این سایت را تشخیص دهند ، به index.bs تغییر داده است. اما این کار چگونه انجام پذیر است؟

متن کامل مقاله در ادامه ی مطلب

 تغییر پسوند اسکریپت ها در سرور راه بسیار مناسبی جهت بالا بردن امنیت است. این تغییر پسوند را ما در فایل های PHP بررسی می کنیم. یعنی کاری می کنیم که بازدیدکنندگان از سرور ما امکان تشخیص این که ما از چه برنامه ای برای تولید یک صفحه ی پویا استفاده کرده ایم ، وجود نداشته باشد. این موضوع بحث اصلی ماست!
این کار به دو روش انجام می گیرد :
1- تغییر پسوند فایل های PHP به چیزی دیگر
2- حذف پسوند های PHP برای پردازش
در روش اول با یک مثال کار را آغاز می کنیم. برای مثال فرض کنید در سایتی شما یک صفحه با آدرس example.com/index.bs مشاهده می کنید آیا می توانید تشخیص دهید که این سایت از چه برنامه ای برای پردازش فایل های خود استفاده می کند ؟ مسلما جواب شما خیر خواهد بود چون انتخاب یک زبان مشخصی از میان زبان های تولید محتوای پویا برای این صفحه غیر ممکن است. در واقع ما می توانیم احتمال دهیم که این فایل در واقع index.php بوده و مدیر سرور برای افزایش امنیت و جلوگیری از اینکه کاربران نتوانند زبان پویای مورد استفاده در این سایت را تشخیص دهند ، به index.bs تغییر داده است. اما این کار چگونه انجام پذیر است؟
در وب سرور Apache همان طور که می دانید در فایل httpd.conf با استفاده از دستور AddType می توان نوع فایل های PHP را اعلان کرد. به صورت زیر :

AddType application/x-httpd-php .php

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

AddType application/x-httpd-php .bs

با اضافه کردن این خط و راه اندازی وب سرور Apache خود می توانید با تمامی فایل هایی که دارای پسوند .bs هستند همانند فایل های .php رفتار کنید و کدهای خود را اجرا کنید.

در وب سرور IIS مایکروسافت کافی است مسیر زیر را در ویندوز (مثلا 2003) پیمایش کنید :

Start > Administration Tools > Internet Information Services (IIS) Manager > Your WebSite(Or Default Website > Right Click > Properties > Home Directory > Configuration > Mappings

در این سربرگ و در قسمت Application Extensions دکمه ی Add را بزنید و مسیر فایل php[ver]isapi.dll را در قسمت Excutable بدهید ([ver] منظور نسخه ی پی اچ پی است) و در قسمت Extension پسوند مورد نظر مثلا .bs را وارد کنید پنجره ها را Ok کنید و وب سرور خود را راه اندازی کنید حال با فایل های .bs همانند فایل های .php رفتار خواهد شد.

اما در روش دوم ما برای هیچ یک از فایل ها پسوند نمی گذاریم و فایل های بدون پسوند به عنوان فایل های PHP تلقی می شوند. برای مثال وقتی که شما در google.com یک عبارت را جستجو می کنید در مرورگر خود آدرس را این گونه می بینید : google.com/search?q=My First Search که در این جا یک فایل search وجود دارد که پسوند آن حذف شده است. حال ما می خواهیم این کار را در سرور خود انجام دهیم.
در وب سرور Apache فایل httpd.conf را بازکنید به جای Addtype خط زیر را قرار دهید :

ForceType application/x-httpd-php

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

در وب سرور IIS مایکروسافت باید مسیر زیر را پیمایش کنید : (فرضا در ویندوز 2003)


Start > Administrative Tools > Internet Information Services Manager


بعد از وارد شدن در قسمت Web Sites وب سایت موردنظر را خود را انتخاب کنید و راست کلیک کنید و Properties را انتخاب کنید. در سربرگ Home Directory دکمه ی Configurations را انتخاب کنید و در پنجره ی باز شده سربرگ Mappings را انتخاب کنید و در ثسمت دوم این سربرگ یعنی Wildcard application Map دکمه ی Insert را بزنید و در پنجره ی بازشده مسیر php[ver]isapi.dll را بنویسید و Ok را بزنید و تمامی پنجره ها Ok کنید و IIS را یک بار Restart کنید. هم اکنون تمامی فایل ها و فایل های بدون پسوند بوسیله ی موتور پردازشگر PHP پردازش می شوند.

امیدوارم که از این مقاله استفاده ی لازم را برده باشید.

موفق و پیروز باشید.

بهرام بهرام بیگی
 

نوشته شده در تاریخ پنجشنبه 20 مهر 1385    | توسط: بهرام بهرام بیگی    | طبقه بندی: وب سرورها،     |
نظرات()