MVC3 - вся маршрутизация работает локально, но не удаленно - PullRequest
3 голосов
/ 16 февраля 2011

У меня есть новый проект MVC3 с одним контроллером, который называется PublicController.cs, который содержит 4 идентичных метода для тестирования работы маршрутизации.Единственная разница между ними заключается в их имени и в том, что они указывают на разные точки зрения ...

public class PublicController : Controller
{
    //
    // GET: /Public/
    public ActionResult Index()
    {
        return View();
    }

    //
    // GET: /Public/App
    public ActionResult App()
    {
        return View();
    }

    //
    // GET: /Public/Press
    public ActionResult Press()
    {
        return View();
    }

    //
    // GET: /Public/Contact
    public ActionResult Contact()
    {
        return View();
    }
}

Я могу получить доступ ко всем из них при работе на сервере разработки, посетив эти URL-адреса ...

http://localhost:53367/Public/

или его эквивалент

http://localhost:53367/Public/Index

, а затем

http://localhost:53367/Public/App
http://localhost:53367/Public/Press 
http://localhost:53367/Public/Contact

Однако, как только он развернут на моем удаленном сервере ASP.NET 4.0, только дваработы:

http://localhost:53367/Public
http://localhost:53367/Public/Index

... все остальные дают мне 404 Ресурс не найден ошибка.

Мой веб-сервер является общим хостингом с netcetera, использующим субдомен для этого развертывания (ранее были проблемы с MVC в виртуальных каталогах, но у полноценных приложений MVC2, работающих в субдоменах, проблем не было).Я развернул с помощью опции «Опубликовать в файловую систему», затем скопировал файлы, а также просто скопировал весь исходный проект.Оба дают одинаковые результаты.

Есть идеи почему?

Спасибо,

Стивен

1 Ответ

0 голосов
/ 16 февраля 2011

Убедитесь, что MVC 3 Framework установлен на веб-сервере и что пул приложений вашего сайта установлен на 4.x ASP.net?

...