Почему сценарий Ajax не работает на сервере IIS 7.5 Win 2008 R2?

У меня есть веб-приложение, которое отлично работает на VS 2013 на моем сервере разработки, но как только я опубликовал его на сервере IIS 7.5 2008 R2, сценарии Ajax, расположенные в моем пользовательском файле сценария, больше не работают, хотя другие сценарии JQuery которые не называют Ajax, работают правильно. Есть ли что-то еще, что нужно сделать для того, чтобы ajax работал на сервере? Я прочитал некоторые сообщения, но пока не нашел ответа. У меня ограниченный опыт работы в IIS и Ajax.

// Обновить:

Я уже выяснил, что сценарий Ajax работает и что проблема наиболее вероятна в следующей строке:

“url: ‘/ Home / GetRates’, // URL для запроса”

Используя debuger, я узнал, что функция GetRates () не вызывается на удаленном сервере, хотя она находится на локальном сервере (под VS 2013). Единственное отличие, которое я вижу, это путь, но не знаю, как его исправить. Ниже приведен сценарий Ajax:

// Retrieve rates and update partial view $(function () { $('#reservSearch').submit(function () { if ($(this).valid()) { $("#theModal").modal("show"); // Display the in progress..... $.ajax({ url: '/Home/GetRates', // URL for the request data: $("#reservSearch").serialize(), // the data to send (will be converted to a query string) type: "POST", // whether this is a POST or GET request dataType: 'html', // the type of data we expect back success: function (data) { // code to run if the request succeeds; The response is passed to the function $("#theModal").modal("hide"); // Close the in progress modal..... $('#ratesView').html(data); // Fill div with results }, error: function (xhr, status) { // code to run if the request fails; the raw request and status codes are passed to the function $("#theModal").modal("hide"); // Close the in progress modal..... alert('Error: Retrieving parking rates' + "
" + xhr.error); } }); } // // it is important to return false in order to cancel the default submission of the form and perform the AJAX call return false; }); });

// ВТОРОЕ ОБНОВЛЕНИЕ

Следуя указаниям в разделе комментариев, это ответ от вызова ajax:

   

Internet Information Services 7.5

Error Summary

HTTP Error 404.0 - Not Found

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

Detailed Error Information
ModuleIIS Web Core
NotificationMapRequestHandler
HandlerStaticFile
Error Code0x80070002
Requested URLhttp://localhost:80/Home/GetRates
Physical PathC:\inetpub\wwwroot\Home\GetRates
Logon MethodAnonymous
Logon UserAnonymous
Most likely causes:
  • The directory or file specified does not exist on the Web server.
  • The URL contains a typographical error.
  • A custom filter or module, such as URLScan, restricts access to the file.
Things you can try:
  • Create the content on the Web server.
  • Review the browser URL.
  • Create a tracing rule to track failed requests for this HTTP status code and see which module is calling SetStatus. For more information about creating a tracing rule for failed requests, click here.
Links and More Information This error means that the file or directory does not exist on the server. Create the file or directory and try the request again.

View more information »

Как отлаживать вызовы AJAX

Полный ответ распространяется на комментарии к вопросу OP, но я думаю, что это помогло больше всего:

  1. Перейдите на веб-страницу, которая вызывает вызов AJAX
  2. В Chrome нажмите F12
  3. Перейдите на вкладку «Сеть»
  4. Активируйте вызов AJAX, отправив форму #reservSearch
  5. На вкладке «Сеть» найдите вызов / Home / GetRates
  6. Нажмите
  7. Проверьте вкладки «Предварительный просмотр и отклик», чтобы увидеть результаты с вашего сервера.
  8. Отображает ли ожидаемые данные HTML, которые прослушивает ваш вызов AJAX?
  • Запрос JQuery Ajax внутри запроса Ajax
  • Как JQuery clone () и изменить идентификатор
  • «Недопустимый токен CSRF или неправильный», а параметр post через AJAX в Django
  • Обрезка IE8 и JQuery ()
  • Как получить предыдущий URL страницы с помощью jquery
  • Как заставить сложение вместо конкатенации в javascript
  • jQuery не определен в bootstrap-sass
  • jQuery bind click * НИЧЕГО * но * ELEMENT *
  • Пример использования twitter bootstrap typeahead ajax
  • Можно ли корректно проанализировать XML, используя синтаксис jQuery $ (responseXML)?
  • Вызов ASMX из jQuery
  • Interesting Posts
    Давайте будем гением компьютера.