phpajaxhttp-status-code-406

ajax post to php results in 406 when data contains <meta


<meta (is what is typed into the form field) form submitted thru jQuery ajax

On my dev server (php 5.3.5) it works fine. On the production server (php 5.3.27) it returns 406.

I can't seem to troubleshoot this on the dev server because the server returns 406 before php is invoked.

When form data is submitted without <meta, it works no problem.

The form also has a wysiwyg editor and markup tags like <h1> cause no error.

I made a basic form without ajax, it posts <meta without problem.

How can I troubleshoot this further to see what the server thinks it is receiving and why it thinks it is NOT ACCEPTABLE?


Solution

  • A browser will indicate what it can accept via a number of Accept headers in the request. If the server wants to return something that the browser will not accept it issues a 406 response.

    Check the headers being sent to the server from your browser (Firebug or Chrome's developer tools will help)

    Check the server configuration (specifically any .htaccess files) and make sure that the server can respond in an appropriate way.