View Full Version : چگونه آدرس URL رو از aspx به aspz تغییر دهیم
StepUp360
شنبه 10 مهر 1389, 22:35 عصر
با سلام
چگونه میتوانیم آدرس URL یا همان نام صفحه ای که به کاربر نمایش داده میشود را به طور مثال از MyPage.aspx به مثلاَ MyPage.az تغییر دهیم و یا به هر نام دیگری تغییر دهیم؟
StepUp360
شنبه 10 مهر 1389, 23:18 عصر
دوستان منظورم توی Addressbar هستش :
مثال:
http://www.mysite.com/MyPage.aspx
نمایش داده بشه:
http://www.mysite.com/MyPage.aspz
PhoenixNet
یک شنبه 11 مهر 1389, 10:03 صبح
سلام
این کار باید در تنظیمات IIS انجام بگیره یعنی شما باید به سرور دسترسی داشته باشین
si6arp
یک شنبه 11 مهر 1389, 10:49 صبح
در باره UrlRewriting جستجو کن
یه سر به اینجا هم بزن : (http://barnamenevis.org/forum/www.urlrewriting.net)www.urlrewriting.net (http://www.urlrewriting.net)
سربلند و پیروز باشید
alonemm
یک شنبه 11 مهر 1389, 11:09 صبح
از لینک های زیر استفاده کن :
http://www.google.com/custom?hl=en&client=google-coop&cof=FORID:13%3BAH:left%3BCX:%25D8%25A8%25D8%25B1%2 5D9%2586%25D8%25A7%25D9%2585%25D9%2587%2520%25D9%2 586%25D9%2588%25DB%258C%25D8%25B3%3BL:http://www.google.com/intl/en/images/logos/custom_search_logo_sm.gif%3BLH:30%3BLP:1%3BVLC:%23 551a8b%3BDIV:%23cccccc%3B&cx=010277259273172057471:gbud9yj2nhi&adkw=AELymgVnDiSy5pJxBS2KoSSR9YtsooV49r6iOIcb_cO5h ImSeco8D3Y94VnWsf_yrHPS69-nkeYH4tXPhFjEjf29L_IHPyaaK_bDT6qjOVZEITV9VfsqvhuRb BAmTJknS8lByoNneSsi&boostcse=0&&sa=X&ei=CzmoTPDpBoKhOtrO2Y8M&ved=0CAYQBSgA&q=Url+Rewriting&spell=1
PhoenixNet
یک شنبه 11 مهر 1389, 11:11 صبح
سلام
با UrlRewriting در .NET نمیشه پسوند فایل رو عوض کرد مگه اینکه باز هم به سرور دسترسی داشته باشین یا سرویس دهنده ها این کار رو برای شما انجام بدن.
si6arp
یک شنبه 11 مهر 1389, 11:16 صبح
سلام
با UrlRewriting در .NET نمیشه پسوند فایل رو عوض کرد مگه اینکه باز هم به سرور دسترسی داشته باشین یا سرویس دهنده ها این کار رو برای شما انجام بدن.
توجه نکردید . ایشون میخواد توی آدرس بار این کارو انجام بده
شما میتونید پسوند aspx رو با UrlRewriting به هر پسوند دیگری تغییر دهید. html - htm - asp - jsp - php
به شما پیشنهاد میکنم یکم بیشتر تمرین و تحقیق کنید. یه کم هم عملی کار کنید تا کامل مباحث UrlRewriting رو متوجه شوید.
با تشکر
PhoenixNet
یک شنبه 11 مهر 1389, 11:44 صبح
توجه نکردید . ایشون میخواد توی آدرس بار این کارو انجام بده
شما میتونید پسوند aspx رو با UrlRewriting به هر پسوند دیگری تغییر دهید. html - htm - asp - jsp - php
به شما پیشنهاد میکنم یکم بیشتر تمرین و تحقیق کنید. یه کم هم عملی کار کنید تا کامل مباحث UrlRewriting رو متوجه شوید.
با تشکر
ممنون از پیشنهادتون
دوست عزیز بنده عرض کردم UrlRewriting در .NET بدون دسترسی به سرور امکان تغییر پسوند فایل ها رو نداره.چون UrlRewriting در دات فقط بر روی صفحاتی که به موتور ASP .NET برای پردازش داده شوند عمل می کند لذا امکان تغییر پسوند فایل ها به html - htm - asp - jsp - php نیست مگر اینکه در IIS این فایل ها رو برای ASP.NET 2.0 ISAPI تعریف کنید.
برای اطلاعات بیشتر میتونید :
http://www.urlrewriting.net/160/en/documentation.html
و همچنین صفحه 4 فایل راهنمای urlrewriting.net مراجعه نمایید.متن رو براتون کپی میکنم.
Limitations of UrlRewritingNet.UrlRewrite
So many good things have of course a shady side, too. Because of rewriting with the .NET 2.0 engine
only requests coming over ASP.NET 2.0 can be handled. This means that the file extension have to be
handled by ASP.NET 2.0 ISAPI library (see: Server Settings, page 14). By default this is for example .aspx
– but if you want to rewrite with other extensions, you have to set this up by yourself or ask your
Administrator to do this.
البته به ذکر این نکته هست که Visual Studio WebDev Server این کارو انجام میده یعنی شما هر پسوندی بذاری کار درست انجام میشه احتمالا شما به این خاطر دچار اشتباه شده اید.
با تشکر
alonemm
یک شنبه 11 مهر 1389, 12:09 عصر
دوست من : PhoenixNet (http://barnamenevis.org/forum/member.php?u=148302)
من خودم توی بیشتر پروژه هام اینکارو کردم و پسوند ها مجازی ساختم.
کمی بیشتر درباره این مبحث اطلاعات جمع آوری کنید.
هیچ تنظیمی هم در سرور IIS نمیخاد.
فقط باید توی صفحه web.config تغییر بدهید.
از شلوغ کردن و آف های بیمورد هم بپرهیزید.
PhoenixNet
یک شنبه 11 مهر 1389, 12:21 عصر
دوست من : PhoenixNet (http://barnamenevis.org/forum/member.php?u=148302)
من خودم توی بیشتر پروژه هام اینکارو کردم و پسوند ها مجازی ساختم.
کمی بیشتر درباره این مبحث اطلاعات جمع آوری کنید.
هیچ تنظیمی هم در سرور IIS نمیخاد.
فقط باید توی صفحه web.config تغییر بدهید.
از شلوغ کردن و آف های بیمورد هم بپرهیزید.
چشم.:لبخندساده:
پس خواهشا این موضوع رو به نویسندگان UrlRewriting.Net به آدرس http://www.urlrewriting.net/164/en/contact.html اطلاع دهید تا نسبت به تصحیح فایل راهنما (انتهای صفحه 4) اقدام نمایند.ظاهرا ایشان از این قابلیت بی اطلاع هستند.
با تشکر
StepUp360
یک شنبه 11 مهر 1389, 12:31 عصر
سلام جناب alonemm (http://barnamenevis.org/forum/member.php?u=127814)
اگه ممكنه يك نمونه فقط جهت آموزش در همين تاپيك آپ كنيد كه هممون بتونيم استفاده كنيم. البته براي من خيلي مهمه كه ياد بگيرم ممنون...
si6arp
یک شنبه 11 مهر 1389, 12:36 عصر
سلام جناب alonemm (http://barnamenevis.org/forum/member.php?u=127814)
اگه ممكنه يك نمونه فقط جهت آموزش در همين تاپيك آپ كنيد كه هممون بتونيم استفاده كنيم. البته براي من خيلي مهمه كه ياد بگيرم ممنون...
موفق و پیروز باشید
PhoenixNet
یک شنبه 11 مهر 1389, 12:55 عصر
با سلام
این مثال رو که دوسنمون ارسال کردن در ادرس
http://www.codeproject.com/KB/aspnet/urlrewriter.aspx
وجود دارد که اونجا هم نویسنده مثال مطرح میکنه که (کپی متن از سایت اصلی) :
Finally
There's one major caveat with all this. If you want to process a request with a file extension other than .aspx such as .asp or .html, then you need to change IIS to pass all requests through to the ASP.NET ISAPI extension. Unfortunately, you will need physical access to the server to perform this, which prevents you from simply XCOPY deploying your code to an ISP.
http://www.codeproject.com/KB/aspnet/URLRewriter/IIS.png
http://www.codeproject.com/KB/aspnet/URLRewriter/IIS2.png
:اشتباه:
باز هم تاکید میکنم این مثال بر روی Visual Studio Webdev Server عالی اجرا می شود ولی بر روی IIS بدون تنظیمات اجرا نمی شود.
si6arp
یک شنبه 11 مهر 1389, 12:57 عصر
شما خیلی دوست داری که با خیلی ها لج کنی.
بدون اینکه بخوای گفته ما رو تست کنی. جالبه....
به هر حال با نمونه مثالی گه برای دوست خوبم قرار دادم همه چیز مشخص میشه.
توصیه میکنم قبل از ارائه بیانیات حتما" به صحت اون پی ببرید(امتحان کنید)
چون توی نت خیلی چیزا نوشته شده . اما باید تست بشه !
با تشکر و سپاس
PhoenixNet
یک شنبه 11 مهر 1389, 13:12 عصر
سلام دوست من
در ابتدا اینکه من حرفی از خودم نزدم بلکه شاهد و دلیل از نویسندگان برنامه ها اوردم این اسمش لجبازی نیست.وقتی طرف که برنامه رو نوشته میگه نمیشه چه اصراری هست که بگیم میشه.پست قبلی نقل قول کسیه که مثالی رو که شما گذاشتین رو نوشته است.
در ثانی من برنامه رو گرفتم و تست کردم حتا روی سرور هم بارگذاری کردم که خدای نکرده اشتباه نکرده باشم.
می تونید برنامه رو تا 20 دقیقه دیگه در ادرس http://d2.smsp.ir تست کنید.توجه نمایید فقط صفحه ای که پسوند .aspx دارد اجرا می شود.
با تشکر
si6arp
یک شنبه 11 مهر 1389, 13:51 عصر
خود من به شخصه این برنامه رو امتحان کرده ام. تست هم گرفته ام . هم در لوکال و هم در سرور. مشکلی نداشته.
بهتره خود ایشون که همچین چیزی رو میخواست تست کنه و نتیجه رو اعلام کنه. همچنین میتونید بحث های مربروطه را در سایت جستجو نمایید و گفتگوهای این مبحث را مشاهده نمایید.
با تشکر
hamhik
یک شنبه 11 مهر 1389, 13:56 عصر
من تو این مثال این کارو کردم
دانلودش کن.
leila_mahyanet
یک شنبه 11 مهر 1389, 14:49 عصر
به قول دوستان تست کردن بهترین کاره .
من هم از urlrewriter استفاده می کنم و محدودیتی واسه نوشتن مسیر مجازی ندارم . و براحتی میتونم به صفحه ای با پسوند دلخواه لینک بدم.
مثال :
<rewrite url="~/m(.+).aspz" to="~/menu.aspx?id=$1"/>
البته نیاز به dll و توضیح داره که اگه خواستید میزارم.
PhoenixNet
یک شنبه 11 مهر 1389, 15:15 عصر
سلام
دوستانی که این کارو انجام دادن آیا امکان داره آدرس یکی از پروژه هاشون رو رو وب بذارن تا ببینیم.البته بدون اینکه نو IIS دست برده باشند.
با تشکر
netremoting
یک شنبه 11 مهر 1389, 17:01 عصر
سلام به همگی
اگه فقط میخوای پسوند رو تغییر بدی نیاز به urlrewriter نداری ، توی اولین جلسه از کلاس ASP.NET advanced (http://barnamenevis.org/forum/showthread.php?t=211914)آقای کرمتی (http://barnamenevis.org/forum/showthread.php?t=211914)این موضوع رو گفتند ، البته خیلی جامع گفتند که خلاصش ارو میتونی اینطوری استفاده کنی .
واسه این کار این کدها رو به web.config اضافه کن مشکلت حل میشه .
<compilation>
<buildProviders>
<add extension=".php" type="System.Web.Compilation.PageBuildProvider"/>
</buildProviders>
</compilation>
<httpHandlers>
<add path="*.php" verb="*" type="System.Web.UI.PageHandlerFactory" validate="true"/>
</httpHandlers>با اضافه کردن این تکه کد به وب کانفیگ از این به بعد می تونی به جای aspx از php با هر پسوندی که دلت میخواد استفاده کنی .
گوشه ای از زنگ تفریح کلاس پیشرفته استاد کرامتی (http://barnamenevis.org/forum/showthread.php?t=211914) (البته یه کم پست تبلیغاتی شده)
موفق باشید
roomezonline
دوشنبه 12 مهر 1389, 16:13 عصر
دوست من : PhoenixNet (http://barnamenevis.org/forum/member.php?u=148302)
من خودم توی بیشتر پروژه هام اینکارو کردم و پسوند ها مجازی ساختم.
کمی بیشتر درباره این مبحث اطلاعات جمع آوری کنید.
هیچ تنظیمی هم در سرور IIS نمیخاد.
فقط باید توی صفحه web.config تغییر بدهید.
از شلوغ کردن و آف های بیمورد هم بپرهیزید.
سلام
شما که به قول خودتون در بیشتر پروژه هاتون این کار رو کردید
اینجا قرار بدید تا بقیه هم استفاده کنند
ما اینجا جمع شدیم تا به هم کمک کنیم و اطلاعاتون رو جهت پیشرفت در اختیار هم بذاریم نه به رخ هم بکشیم که من بلدم و من بلد نیستم
shahab2005
سه شنبه 13 مهر 1389, 09:01 صبح
سلام به همگی
اگه فقط میخوای پسوند رو تغییر بدی نیاز به urlrewriter نداری ، توی اولین جلسه از کلاس ASP.NET advanced (http://barnamenevis.org/forum/showthread.php?t=211914)آقای کرمتی (http://barnamenevis.org/forum/showthread.php?t=211914)این موضوع رو گفتند ، البته خیلی جامع گفتند که خلاصش ارو میتونی اینطوری استفاده کنی .
واسه این کار این کدها رو به web.config اضافه کن مشکلت حل میشه .
<compilation>
<buildProviders>
<add extension=".php" type="System.Web.Compilation.PageBuildProvider"/>
</buildProviders>
</compilation>
<httpHandlers>
<add path="*.php" verb="*" type="System.Web.UI.PageHandlerFactory" validate="true"/>
</httpHandlers>با اضافه کردن این تکه کد به وب کانفیگ از این به بعد می تونی به جای aspx از php با هر پسوندی که دلت میخواد استفاده کنی .
گوشه ای از زنگ تفریح کلاس پیشرفته استاد کرامتی (http://barnamenevis.org/forum/showthread.php?t=211914) (البته یه کم پست تبلیغاتی شده)
موفق باشید
ببخشید، میشه همین رو به صورت سمپل بذارید
vilkhani
پنج شنبه 02 تیر 1390, 14:06 عصر
سلام دوستان عزیز
من تنظیماتی که دوستمون برای Web.config گفته بود رو انجام دادم اما باز هم جواب ندارد.
اگر امکان داره حد اقل یه sample کوچولو برای ما بزارید
ممنونم از لطف همه دوستان
vilkhani
پنج شنبه 02 تیر 1390, 14:08 عصر
راستی ان نکته ی مهم یادتون نره که :
IIS6 روش Url Rewriting رو ساپورت نمیکنه مگر برای آدرس هایی که پسوند .aspx داشته باشند.
si6arp
پنج شنبه 02 تیر 1390, 14:18 عصر
اگه دات نت 4 رو روی سرور نصب کرده باشید میتونید با استفاده از دی ال ال خود دات نت 4 هد ثئنشدخ ذث IIS6 اضافه کنید.
PhoenixNet
پنج شنبه 02 تیر 1390, 21:06 عصر
سلام
در ادامه بحث هایی که شد بنده متوجه شدم که در IIS 7.5 با تنظیم خط زیر در Web.Config :
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
تمام درخواست هایی که به سرور برسه توسط IIS به موتور پردازش ASP .NET داده مشود لذا می توانید به جای aspx از هر پسوند دیگری که خواستید استفاده کنید.ولی در ویرایش های پایین تر باید به صورت دستی در IIS تنظیمات انجام شود که هاست های اشتراکی این کار را انجام نمی دهند.
بدیهی است که این کار بر روی کارایی سرور تاثیر خواهد داشت.
هاست های ایرانی معروف بیشتر از IIS 7.5 استفاده می کنند لذا قبل از خرید هاست به نیازهاتون توجه کنید.
در دات نت 4 مبحث System.Web.Routing اضافه شده است ولی تا وقتی IIS پسوند شما را به موتور ASP .NET انتقال ندهد هیچ پردازشی انجام نمی شود.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.