I think you get the error message because you called exit() in your reduced example. Don't do that.

If you then still get the HTML with the HTTP headers in the HTML, then maybe try outputting the HTTP status code first:

print "200 OK\r\n"; print $q->header(-status => '200 OK', ...); ...

Apache looks for HTTP headers in the output of your script, and if it doesn't find them, it assumes that your script outputs raw HTML (which your browser then turns into more HTML). So if the above works, then maybe something else is outputting a string via print first, or you need to reconfigure Apache to (not?) want the HTTP status code first from your script.


In reply to Re^3: CGI Header Breaks on Second AJAX Call by Corion
in thread CGI Header Breaks on Second AJAX Call by brandon8696

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.