X
تبلیغات
پیکوفایل
رایتل

چگونه پسوند صفحات وب را مخفی کنیم !!!

جمعه 19 آذر‌ماه سال 1389 ساعت 10:22 ق.ظ

برای این کار راههای مختلفی در اینترنت وجود داره و که من به یکی از راحت ترین و بهترینشون می پردازم .
ابتدا باید در مورد یکی از متدهای موجود در دات نت که این امکان رو به ما میده صحبت کنم . متد HttpContext.RewritePath() به ما این اجازه رو می ده که به طور داینامیک آدرسی خاص که توسط مرورگر درخواست میشه رو به مسیری جدید redirect کنیم . به عنوان مثال هر گاه آدرس http://www.mysite.com/mypage.html درخواست شد ، به آدرس http://www.mysite.com/mypage.aspx هدایت بشیم .
خب ، با دونستن این مطلب مساله رو به این شکل فرض می کنیم که : ما یک وب سایت داریم به نام www.HideExtensions.com که این سایت حاوی یک دایرکتوری به نام Dir1 می باشد و درون این دایرکتوری دو صفحه موجود است به نام های Page1.aspx و Page2.aspx . در root سایت هم صفحه Default.aspx رو داریم که حاوی دو Button هست که هر یک ما رو هدایت می کنه به یکی از دو صفحه فوق .
حالا می خوایم زمانی که به صفحه Page1.aspx میریم در نوار آدرس این تغییر بوجود بیاد :

راه حل : به سایتمون فایل global.asax را اضافه می کنیم . ( کلیک راست بر روی وب سایت ، انتخاب گزینه Add New Item… و انتخاب گزینه Global Application Class ) . سپس درون این فایل متد زیر را اضافه می کنیم :



Code:

<configSections>
<section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />
</configSections>



و پس از تگ <system.web> ، عبارت زیر را :


Code:

<httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
</httpModules>


و بالاخره بعد از تگ بسته </system.web> عبارت زیر را وارد می کنیم :


Code:

<rewriter>
<rewrite url="~/Dir1/(.+)/" to="~/Dir1/$1.aspx" />
</rewriter>


حالا کافیه در صفحه Default.aspx دو عدد Button بگذارید و در رویداد هر یک کدهای زیر رو وارد کنید :


Code:

protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("~/Dir1/Page1/");
}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("~/Dir1/Page2/");
}


همین!
من سورس مثال بالا را در قالب یک فایل زیپ به همین مطلب پیوست کردم که شامل dll مورد نظر هم هست .
امیدوارم توضیحات کامل باشه . هر جا سوالی بود در خدمتم!
منبع
نظرات (0)
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)

نام :
ایمیل :
وب/وبلاگ :
ایمیل شما بعد از ثبت نمایش داده نخواهد شد

دانلود آهنگ جدید