ASP.NET MVC-كيفية استخدام طرق عند التطبيق هو نشر فرعي من المجال ؟

StackOverflow https://stackoverflow.com/questions/802253

  •  03-07-2019
  •  | 
  •  

سؤال

لدي webapp الذي يعمل تماما عندما تصحيحه و اختبارها محليا.ومع ذلك عندما نشر الموقع إلى productionserver التوجيه عبث.هذا هو لأنه يعمل على مشروع فرعي على productionserver.

Testing:     http://localhost:xxx/
Production:  http://remotehost/webapp/

كيف يمكنني إعداد التوجيه?

هذا هو بلدي الحالي إعداد التوجيه (في الغالب الافتراضي).الخادم يعرض الافتراضي تحكم العمل عند زيارة http://remotehost/webapp/.ولكن عندما الصعب رمز وحدة تحكم (http://remotehost/webapp/Project/ أنها لا تعمل...

Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}")

    routes.MapRoute("ProjectsByCategory", "Project/Category/{id}", _
                    New With {.controller = "Project", .action = "ListByCategory", .id = ""}, _
                    New With {.id = "^[0-9]+"})


    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Project", .action = "Index", .id = ""} _
    )

End Sub
هل كانت مفيدة؟

المحلول

بالنسبة لي فإنه يبدو وكأنه قد تكون ذات صلة إلى النشر على iis 6.هناك مقال هنا حول ذلك.

بالنسبة لي مماثل كان قد تم حل المشكلة عن طريق إضافة 'البدل تطبيق خريطة':

  • في IIS, انقر بزر الماوس الأيمن و اختر خصائص الدليل الظاهري في السؤال
  • اختر علامة التبويب الدليل الظاهري
  • اختيار التكوين
  • انقر فوق إدراج
  • أدخل المسار إلى aspnet-isapi.dll (عادة c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll).

نصائح أخرى

بالمناسبة التوجيه يبدو أن العمل على مستوى التطبيق.لا تحتاج إلى عناء الخاص بك domainname أو أعلى دليل الأسماء.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top