برگزیده های پرشین تولز

يك سئوال فوري در مورد ايجاد ساب دومين مجازي

blognevis

Registered User
تاریخ عضویت
26 مارس 2006
نوشته‌ها
883
لایک‌ها
9
محل سکونت
shiraz
دوستان سلام
من ميخوام سابدومين مجازي در بانك sql بسازم و يك روش هم بلدم كه متاسفانه سابدومين را در سمت راست قرار ميده
حالا من ميخوام سابدومين در سمت چپ باشه مثل مثال زير كسي ميتونه من را راهنمايي كنه
ممنون ميشوم
موفق باشيد


www.subdomain.domain.com
 

blognevis

Registered User
تاریخ عضویت
26 مارس 2006
نوشته‌ها
883
لایک‌ها
9
محل سکونت
shiraz
انگار كسي نميدونه

از مدير اين بخش خواهش ميكنم جواب منو بده اگر بلده
ممنون
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
دوست من سوال شما گذشته از اینکه به #C مربوط نیست ، از پایه هم اشتباه است .

از سابدمین ساختن در بانک SQL من تصور میکنم که شما یک APP با asp.net دارید که میخواهید در ساب دومین قرارش دهید . فعلا من این تاپیک رو میفرستم توی قسمت asp.net ، شما زحمت بکشید توضیحات بیشتری بدید که منظورتون چی بوده در صورت لزوم دوباره جای تاپیک رو عوض میکنیم .

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

blognevis

Registered User
تاریخ عضویت
26 مارس 2006
نوشته‌ها
883
لایک‌ها
9
محل سکونت
shiraz
دوست من سوال شما گذشته از اینکه به #C مربوط نیست ، از پایه هم اشتباه است .

از سابدمین ساختن در بانک SQL من تصور میکنم که شما یک APP با asp.net دارید که میخواهید در ساب دومین قرارش دهید . فعلا من این تاپیک رو میفرستم توی قسمت asp.net ، شما زحمت بکشید توضیحات بیشتری بدید که منظورتون چی بوده در صورت لزوم دوباره جای تاپیک رو عوض میکنیم .

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

مدير محترم سلام
دوست عزيز ممنون از اينكه حداقل شما يك جواب به ما داديد
در ضمن بانك ms sql2000 هست
ببينيد ما يك سرويس دهنده بوسيله زبان برنامه نويسي #c نوشته ايم كه ميخواهيم در ان سرويس ساب دومين براي كاربران ايجاد كنيم
حال ما يك مشكل داريم و اون اينه كه ميخواهيم سابدومين مجازي در بانك تعريف بشه و مجبور نباشيم بصورت حقيقي در پانل هاست ان را تعريف كنيم
اين كار را هم كرديم ولي مشكل اصلي اينه كه سابدومين كه ايجاد كرديم در سمت راست دومين قرار ميگيره مانند www.domain.com/x ولي ما ميخواهيم به اين شكل در بيايد www.x.domain.com حالا نميدونيم بايد چيكار بكنم

لذا اين تايپك را ايجاد كرديم كه اگر كسي بلده ما را راهنمايي كند

ممنون از همه دوسان
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
سرویس دهنده با زبان #C نوشته اید یعنی با #C وب سرور نوشته اید ؟

اگر خودتون وب سرور رو نوشتید که دیگه معنی نداره بپرسید چطوری براش ساب دامین تعریف کنید ، چون قائدتا خودتون فقط میدونید که چی نوشتید ! و چه امکاناتی داره !

اگر منظور شما از سرویس دهنده ، برنامه سرویس دهنده وبلاگ است و مثلا میخواهید مثل وبلاگها آدرس دهی کنید تا جایی که من میدانم به یک Wildcard DNS نیاز دارید .
 

blognevis

Registered User
تاریخ عضویت
26 مارس 2006
نوشته‌ها
883
لایک‌ها
9
محل سکونت
shiraz
مدير محترم سلام
دوست عزيز ممنون از اينكه حداقل شما يك جواب به ما داديد
در ضمن بانك ms sql2000 هست
ببينيد ما يك سرويس دهنده بوسيله زبان برنامه نويسي #c نوشته ايم كه ميخواهيم در ان سرويس ساب دومين براي كاربران ايجاد كنيم
حال ما يك مشكل داريم و اون اينه كه ميخواهيم سابدومين مجازي در بانك تعريف بشه و مجبور نباشيم بصورت حقيقي در پانل هاست ان را تعريف كنيم
اين كار را هم كرديم ولي مشكل اصلي اينه كه سابدومين كه ايجاد كرديم در سمت راست دومين قرار ميگيره مانند www.domain.com/x ولي ما ميخواهيم به اين شكل در بيايد www.x.domain.com حالا نميدونيم بايد چيكار بكنم

لذا اين تايپك را ايجاد كرديم كه اگر كسي بلده ما را راهنمايي كند

ممنون از همه دوسان

ساب دومين براي فوروارد كردن به يك ادرس ديگه
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
الان شما جواب منو دیدید ؟
 

blognevis

Registered User
تاریخ عضویت
26 مارس 2006
نوشته‌ها
883
لایک‌ها
9
محل سکونت
shiraz
سرویس دهنده با زبان #C نوشته اید یعنی با #C وب سرور نوشته اید ؟

اگر خودتون وب سرور رو نوشتید که دیگه معنی نداره بپرسید چطوری براش ساب دامین تعریف کنید ، چون قائدتا خودتون فقط میدونید که چی نوشتید ! و چه امکاناتی داره !

اگر منظور شما از سرویس دهنده ، برنامه سرویس دهنده وبلاگ است و مثلا میخواهید مثل وبلاگها آدرس دهی کنید تا جایی که من میدانم به یک Wildcard DNS نیاز دارید .

سلام
ممنون از جوابتان
بله دقيقا ميخوام مثل سرويس هاي وبلاگ ساب دومين ايجاد كنم البته بصورت مجازي

راهي هست
 

Graveworm

Registered User
تاریخ عضویت
23 می 2005
نوشته‌ها
1,071
لایک‌ها
12
محل سکونت
Tehran
یعنی شما میخوای وقتی به این آدرس رفتیم :
x.blog.com
خودش بفرسته به مثلا :
blog.com/blogs?uid=32442

؟؟
 

blognevis

Registered User
تاریخ عضویت
26 مارس 2006
نوشته‌ها
883
لایک‌ها
9
محل سکونت
shiraz
چرا كسي جواب مارا نميده
از مديران و دوساني كه واردن درخواست راهنماي ميكنم
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
همه راهها به مون wildcard dns که گفته شد برمیگرده!

تا جایی که من میدانم به یک Wildcard DNS نیاز دارید .
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
منظورت از راه دیگه چیه ؟!
راهش همونه که خدمتتون عرض کردیم دیگه ! سرور دیدیکیت میخواید که روش wildcard dns نصب باشه ! البته کل این قضیه به مقادیر زیادی سرمایه گذاری اولیه نیاز داره ! اگر برات توجیه اقتصادی داره این کار رو بکن . همونطوری که میبینی تعداد خیلی محدودی سایت در عالم وجود داره که میاد و subdomain مجازی میسازه !

مثلا بین سایتهای ایرانی از حد اکثر از تعداد انگشتان دست ( چه بسا فقط یک دست ) تجاوز نمیکنه ! اگر میخوای خیالت رو راحت کنم با هیچ برنامه وب بیسی هم نمیتونی ساب دامینمجازی ایجاد کنی (اونم روی هاست شیر ! )! بیخودی دنبال راه حل اینطوری نگرد چون کنترل سابدامین ها از محدوده اختیارات asp.net خارجه !
 

tabeez

Registered User
تاریخ عضویت
7 دسامبر 2006
نوشته‌ها
260
لایک‌ها
0
بیخودی دنبال راه حل اینطوری نگرد چون کنترل سابدامین ها از محدوده اختیارات asp.net خارجه !
پس این برنامه های بلاگی که نوشته شده با asp.net هست، به چه صورت subdomainها! رو مدیریت میکنن؟
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
کدوم برنامه ها ؟؟؟؟
 

amir_3d_mad

Registered User
تاریخ عضویت
4 ژوئن 2007
نوشته‌ها
98
لایک‌ها
0
به نقل از aramdreamss در یکی از فرومها :

مشتری من یک وب سایت با تعدادی ساب دامین داشت که مثلا به شکل products.somedomain.com تعریف شده بودند.حالا مشتری می خواست اگر به عنوان مثال کاربر آدرس support.somedomain.com/helpdesk.aspx را درخواست کرد اطلاعات از somedomain.com/support/helpdesk.aspx برای او نمایش داده شود. یعنی کاربر همیشه آدرس http://support.somedomain.com/helpdesk.aspx را در مرورگر خود ببیند ( در حالی که اطلاعات در پوشه support قرار دارند ) . این روند تغییر آدرس از آن چه که درخواست شده است " بازنویسی آدرس" نام دارد. در این مقاله ما یکی از راه های حل این مشکل را بررسی خواهیم کرد.

چه گزینه هایی برای بازنویسی URL در اختیار داریم؟

- ساده ترین و مناسب ترین راه استفاده از Application_BeginRequest و کلاس HttpContext برای بازنویسی آدرس است.
- استفاده از یک ماژول http در برنامه ASP.NET برای انجام این کار
-استفاده از یک فیلتر ISAPI که درخواست ها را بررسی و عمل بازنویسی را انجام دهد.

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

رویداد Application_BeginRequest

رویداد Application_BeginRequest اولین رویدادی است که در خط لوله ( Pipeline ) پردازش مربوط به HTTP اجرا می شود. این رویداد بهترین مکان برای قرار دادن کد بازنویسی آدرس است.

کلاس HttpContext

کلاس HttpContext شامل اطلاعات ویژه HTTP در مورد یک درخواست HTTP است.این کلاس همچنین به شما اجازه دسترسی به دیگر اشیا ASP.NET نظیر Request و Response را می دهد. این کلاس یک متد استاتیک به نام Current دارد که مراجع برنامه جاری را نگهداری می کند. متد RewritePath() در این کلاس کلید انجام عمل بازنویسی آدرس است. این متد به دو شکل در دات نت فریم ورک 1.1 تعریف شده است:


کد:
public void RewritePath(string);
public void RewritePath(string, string, string);
نقش اصلی متد RewritePath() به روز کردن مسیر شی Request و نیز مشخصه های Query String برای ماست.به عبارت دیگر استفاده از این متد این امکان را به ما می دهد تا از آدرس هایی استفاده کنیم که با مسیر داحلی صفحه تفاوت دارند.

مثال - گام به گام

- یک پروژه ASP.NET در سی شارپ بسازید.
-فایل web.config را باز کنید و تگ های زیر را به آن بیفزایید:

کد:

<appSettings>
<add key="productsSite" value="products"></add>
<add key="servicesSite" value="services"></add>
<add key="supportSite" value="support"></add>
</appSettings>
ما نام های فیزیکی پوشه هایی که صفحات واقعی در آنها قرار دارند را در بخش appSettings ذخیره می کنیم. ما این اطلاعات را بعدا در کدی که می نویسیم خواهیم خواند.

- سه پوشه جدید در برنامه خود بسازید : Products وServices و Support
-به هر یک از این پوشه ها یک وب فرم به نام MainPage.aspx اضافه کنید.
-فایل Global.asax را باز کنید و هندلر زیر را پیدا کنید:

protected void Application_BeginRequest (Object sender, EventArgs e)

- کد زیر را به Application_BeginRequest اضافه کنید :

کد:

string host,originalurl,newurl;
host=Request.Url.Host;
originalurl=Request.Url.PathAndQuery;

switch(host)
{
case "products.somedomain.com":
newurl="~/" +
ConfigurationSettings.AppSettings["productsSite"]
+ originalurl;
break;
case "services.somedomain.com":
newurl="~/" +
ConfigurationSettings.AppSettings["servicesSite"]
+ originalurl;
break;
case "support.somedomain.com":
newurl="~/" +
ConfigurationSettings.AppSettings["supportSite"]
+ originalurl;
break;
default:
newurl="~/" +
ConfigurationSettings.AppSettings["supportSite"]
+ originalurl;
break;
}
HttpContext.Current.RewritePath(newurl);



حالا بیایید کد را با هم بررسی کنیم:

ما ابتدا ویژگی هوست مربوط به درخواست را به کمک Request.Url.Host دریافت می کنیم. در مورد این مثال ما آن را به صورت چیزی شبیه به support.somedomain.com یا somedomain.com دریافت می کنیم.

ما همچنین مسیر و query string صفحه درخواست شده را به کمک Request.PathAndQuery بدست می آوریم. در سناریو ما این چیزی شبیه به /helpdesk.aspx خواهد بود.

عبارت switch هوست را تست می کند و بر اساس هوست دریافت شده ما اطلاعات مربوط به محل فیزیکی صفحه را از فایل web.config می خوانیم. ما آدرس جدید را از ریشه به این پوشه فیزیکی تغییر می دهیم ( با کاراکتر ~ )

در نهایت متد RewritePath() را از کلاس HttpContext فراخوانی می کنیم و آدرس جدید را به آن پاس می کنیم. در نتیجه زمانی که کاربر آدرسی نظیر support.somedomain.com را درخواست کند ما اطلاعات را از جایی مثل somedomain.com/support folder به کاربر خواهیم داد.

------------------------------------------------------------------------------------------
<system.web>
<urlMappings enabled="true">
<add url="~/Widget.aspx" mappedUrl="~/Products/W/Widgets.aspx"/>
</urlMappings>
</system.web>

من که نتونستم به هدفم برسم . اگه شما تونستی ، ما رو هم بی خبر نذار .
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
این که قضیش کاملا فرق میکنه !
اینجا یه سری سایدامین از قبل وجود داشته حالا توی این ساب دامین ها URLRewriting تعریف شده اصلا ساب دامین به صورت دینامیک تولید نشده !

در ضمن خیلی هم بد توضیح داده !اوضیحاتش رو نخونید سنگین ترید !:)
 
بالا