title: The HTTP verb POST used to access path ' ' is not allowed on IIS 7
body: <p>I am a Bit new on this ..I am Replicating this Demo Example on my Local Server</p>
  <p><a href="http://www.bibeault.org/jqia2/chapter4/dvds/dvds.html" rel="nofollow noreferrer">http://www.bibeault.org/jqia2/chapter4/dvds/dvds.html</a></p>
  <p>In Live Example Resulting data gets properly loaded ..But Not on My Machine ..My Code and css are exactly same ,</p>
  <p><strong>Update</strong> : Recently Tracked error :</p>
  <pre><code>&gt;POST http://localhost:1701/applyFilters 405 Method Not Allowed&lt;br/&gt;
  </code></pre>
  <blockquote>
  <p>The HTTP verb POST used to access path '/applyFilters' is not allowed.</p>
  </blockquote>
  <p>it is on .Net Server.... resulting data comes from this Page <a href="http://www.bibeault.org/jqia2/chapter4/dvds/applyFilters" rel="nofollow noreferrer">http://www.bibeault.org/jqia2/chapter4/dvds/applyFilters</a> ... Do I need to completely recreate this page on My server also ?..Need some guidence</p>
  <p>My Code:</p>
  <pre><code>&lt;!DOCTYPE html&gt;
  &lt;html&gt;
  &lt;head&gt;
      &lt;title&gt;DVD Ambassador &amp;mdash; Disc Locator&lt;/title&gt;
      &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;Styles/dvds.css&quot;&gt;
      &lt;script type=&quot;text/javascript&quot; src=&quot;http://code.jquery.com/jquery-1.4.js&quot;&gt;&lt;/script&gt;
      &lt;script type=&quot;text/javascript&quot;&gt;
          var filterCount = 0;
  
          $(function () {
  
              $('#addFilterButton').click(function () {
                  var filterItem = $('&lt;div&gt;')
              .addClass('filterItem')
              .appendTo('#filterPane')
              .data('suffix', '.' + (filterCount++));
  
                  $('div.template.filterChooser')
                  .children().clone().appendTo(filterItem)
                .trigger('adjustName');
              });
  
              $('select.filterChooser').live('change', function () {
                  var filterType = $(':selected', this).attr('data-filter-type');
                  var filterItem = $(this).closest('.filterItem');
                  $('.qualifier', filterItem).remove();
                  $('div.template.' + filterType)
                .children().clone().addClass('qualifier')
                .appendTo(filterItem)
                .trigger('adjustName');
                  $('option[value=&quot;&quot;]', this).remove();
              });
  
              $('button.filterRemover').live('click', function () {
                  $(this).closest('div.filterItem').remove();
              });
  
              $('.filterItem [name]').live('adjustName', function () {
                  var suffix = $(this).closest('.filterItem').data('suffix');
                  if (/(\w)+\.(\d)+$/.test($(this).attr('name'))) return;
                  $(this).attr('name', $(this).attr('name') + suffix);
              });
  
              $('#addFilterButton').click();
  
              $('#filtersForm').submit(function () {
                  $('#resultsPane').load('applyFilters', $('#filtersForm').serializeArray());
                  return false;
              });
  
              /* bonus exercise code -- uncomment to enable
              $('input.numeric').live('keypress',function(event){
              if (event.which &lt; 48 || event.which &gt; 57) return false;
              });
              */
          });
      
      &lt;/script&gt;
  &lt;/head&gt;
  &lt;body&gt;
      &lt;div id=&quot;pageContent&quot;&gt;
  
        &lt;h1&gt;DVD Ambassador&lt;/h1&gt;
        &lt;h2&gt;Disc Locator&lt;/h2&gt;
  
        &lt;form id=&quot;filtersForm&quot; action=&quot;/fetchFilteredResults&quot; method=&quot;post&quot;&gt;
  
          &lt;fieldset id=&quot;filtersPane&quot;&gt;
            &lt;legend&gt;Filters&lt;/legend&gt;
            &lt;div id=&quot;filterPane&quot;&gt;&lt;/div&gt;
            &lt;div class=&quot;buttonBar&quot;&gt;
              &lt;button type=&quot;button&quot; id=&quot;addFilterButton&quot;&gt;Add Filter&lt;/button&gt;
              &lt;button type=&quot;submit&quot; id=&quot;applyFilterButton&quot;&gt;Apply Filters&lt;/button&gt;
            &lt;/div&gt;
          &lt;/fieldset&gt;
  
          &lt;div id=&quot;resultsPane&quot;&gt;&lt;span class=&quot;none&quot;&gt;No results displayed&lt;/span&gt;&lt;/div&gt;
  
        &lt;/form&gt;
  
      &lt;/div&gt;
  
      &lt;!-- hidden templates --&gt;
      &lt;div id=&quot;templates&quot;&gt;
  
        &lt;div class=&quot;template filterChooser&quot;&gt;
          &lt;button type=&quot;button&quot; class=&quot;filterRemover&quot; title=&quot;Remove this filter&quot;&gt;X&lt;/button&gt;
  
          &lt;select name=&quot;filter&quot; class=&quot;filterChooser&quot; title=&quot;Select a property to filter&quot;&gt;
            &lt;option value=&quot;&quot; data-filter-type=&quot;&quot; selected=&quot;selected&quot;&gt;-- choose a filter --&lt;/option&gt;
            &lt;option value=&quot;title&quot; data-filter-type=&quot;stringMatch&quot;&gt;DVD Title&lt;/option&gt;
            &lt;option value=&quot;category&quot; data-filter-type=&quot;stringMatch&quot;&gt;Category&lt;/option&gt;
            &lt;option value=&quot;binder&quot; data-filter-type=&quot;numberRange&quot;&gt;Binder&lt;/option&gt;
            &lt;option value=&quot;release&quot; data-filter-type=&quot;dateRange&quot;&gt;Release Date&lt;/option&gt;
            &lt;option value=&quot;viewed&quot; data-filter-type=&quot;boolean&quot;&gt;Viewed?&lt;/option&gt;
          &lt;/select&gt;
        &lt;/div&gt;
  
        &lt;div class=&quot;template stringMatch&quot;&gt;
          &lt;select name=&quot;stringMatchType&quot;&gt;
            &lt;option value=&quot;*&quot;&gt;contains&lt;/option&gt;
            &lt;option value=&quot;^&quot;&gt;starts with&lt;/option&gt;
            &lt;option value=&quot;$&quot;&gt;ends with&lt;/option&gt;
            &lt;option value=&quot;=&quot;&gt;is exactly&lt;/option&gt;
          &lt;/select&gt;
          &lt;input type=&quot;text&quot; name=&quot;term&quot;/&gt;
        &lt;/div&gt;
  
        &lt;div class=&quot;template numberRange&quot;&gt;
          &lt;input type=&quot;text&quot; name=&quot;numberRange1&quot; class=&quot;numeric&quot;/&gt; &lt;span&gt;through&lt;/span&gt;
          &lt;input type=&quot;text&quot; name=&quot;numberRange2&quot; class=&quot;numeric&quot;/&gt;
        &lt;/div&gt;
  
        &lt;div class=&quot;template dateRange&quot;&gt;
          &lt;input type=&quot;text&quot; name=&quot;dateRange1&quot; class=&quot;dateValue&quot;/&gt; &lt;span&gt;through&lt;/span&gt;
          &lt;input type=&quot;text&quot; name=&quot;dateRange2&quot; class=&quot;dateValue&quot;/&gt;
        &lt;/div&gt;
  
        &lt;div class=&quot;template boolean&quot;&gt;
          &lt;input type=&quot;radio&quot; name=&quot;booleanFilter&quot; value=&quot;true&quot; checked=&quot;checked&quot;/&gt; &lt;span&gt;Yes&lt;/span&gt;
          &lt;input type=&quot;radio&quot; name=&quot;booleanFilter&quot; value=&quot;false&quot;/&gt; &lt;span&gt;No&lt;/span&gt;
        &lt;/div&gt;
  
      &lt;/div&gt;
  
    &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  <p>My Css:</p>
  <pre><code>body {
    background-image: url(backg.jpg);
  }
  
  body,td,th {
    font-family: Verdana,sans-serif;
    font-size: 10pt;
  }
  
  #templates {
    display:none; 
  }
  
  #pageContent {
    width: 720px;
    background-color: white;
    color: #444444;
    border: 2px ridge #888888;
    margin: 32px auto;
    padding: 8px 32px;
  }
  
  h1,h2 {
    text-align: center;
  }
  
  h1,h2,h3 {
    margin: 0;
  }
  
  fieldset,legend {
    border: 2px ridge silver;
  }
  
  fieldset {
    padding-top: 12px;
  }
  
  legend {
    padding: 3px 12px;
    background-color: silver;
    font-weight: bold;
  }
  
  #filterPane {
    margin-bottom: 16px;
  }
  
  .filterItem * {
    margin-right: 4px;
    margin-bottom: 4px;
  }
  
  #resultsPane {
    margin-top: 14px;
  }
  
  #resultsPane span.none{
    color: silver;
    font-style: italic;
  }
  
  #resultsPane table {
    background-color: #444444;
    width: 100%;
    margin-top: 12px;
  }
  
  #resultsPane th {
    background-color: silver;
    border: 2px outset silver;
    font-size: 0.9em;
  }
  
  #resultsPane td {
    background-color: white;
    padding: 1px 12px;
    font-size: 0.8em;
    text-align: center;
  }
  
  #resultsPane td:first-child {
    text-align: left;
  }
  
  input.numeric {
    width: 48px;
  }
  
  input.dateValue {
    width: 64px;
  }
  </code></pre>
  <hr />
  <h3>Solved</h3>
  <p>This was just needed to add in web.config for IIS7</p>
  <pre><code>    &lt;?xml version=&quot;1.0&quot;?&gt;
  &lt;configuration&gt;
      &lt;system.webServer&gt;
          &lt;handlers&gt;
              &lt;add name=&quot;htm&quot; path=&quot;*.htm&quot; verb=&quot;*&quot; modules=&quot;IsapiModule&quot;  scriptProcessor=&quot;%windir%\system32\inetsrv\asp.dll&quot; resourceType=&quot;Either&quot; /&gt;
          &lt;/handlers&gt;
      &lt;/system.webServer&gt;
  &lt;/configuration&gt;
  </code></pre>
  <p>Everybody suggestion and this post helped:</p>
  <p><a href="http://zhongchenzhou.wordpress.com/2011/12/05/iis-7-7-5-allow-post-requests-to-html-files/" rel="nofollow noreferrer">http://zhongchenzhou.wordpress.com/2011/12/05/iis-7-7-5-allow-post-requests-to-html-files/</a></p>