Results 1 to 7 of 7
  1. #1

    Question request failed: erroneous characters after protocol string: GET

    A couple of questions to anyone that can help - thanks in advance:

    First of all apache error log has this just before a restart:

    request failed: erroneous characters after protocol string: GET
    The rest of the string is an image file that is not on the server.

    Could that cause a restart of Apache?


    What is the best way to find out what causes Apache to restart? Some script or request causes memory to be consumed passed the burstable limit and this may cause the restart also?


    I want to know how to find out what causes the restart. If nothing is recorded, how will I ever know? I check process running and all is fine, so it has to be something requested or done - but what?

  2. #2
    Check your apache error log, probably /usr/local/apache/logs/error_log or something similar as a starter for 10.

  3. #3
    Yes, I checked it, that is how I knew what error message to give above, however, that is not what I am asking, I know where to check for errors, I am asking what causes the error generally.

  4. #4
    Aaah, ok. Good question, and not an easy one to answer. You could try installing munin as it should show any memory spikes, etc. Simply accessing an image on the server should just give a not-found error, not a crash. It's possible that the invalid characters are causing apache to fall over, can you see the GET from the access log using timestamps to match it over to the restart? If so you could try telnet'ing to port 80 and doing a manual GET to see if that causes it to fall over. At least that would start to narrow it down.

  5. #5
    Now that is helpful information, please give me the command Get for telenet that I can use... (although I doubt it is the actual get command, it seems to be something associated with the characters).

    Does munin also record what was being processed along with the memory spike?

  6. #6
    Join Date
    Jul 2003
    You might also want to install mod_security or some other forward facing proxy to capture requests that are coming in, this might help you in figuring out what kind of request is causing Apache to crash.

    As for your other question on telnetting commands:

    mini-me:~$ telnet 80
    Connected to
    Escape character is '^]'.
    GET / HTTP/1.1 <-- what you type in, followed by a blank line
    HTTP/1.1 200 OK
    Cache-Control: private
    Content-Type: text/html
    Server: GWS/2.1
    Date: Sat, 18 Nov 2006 10:45:46 GMT
    Transfer-encoding: chunked
    Connection: close
    Set-Cookie: PREF=ID=c1262de97f1dd9b8:TM=1163846746:LM=1163846746:S=RtatJurljEDXCisc; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/;
    [ .. snipped the rest .. ]
    In this example the request is for / (the index file). General format is:

    [blank line]

    So, in my example:

    GET / HTTP/1.1

    GET = Method
    / = Resource
    HTTP/1.1 = Protocol
    In order to understand recursion, one must first understand recursion.
    If you feel like it, you can read my blog
    Signal > Noise

  7. #7
    fyrestrtr, thanks for such a detailed reply.

    Before your post I checked some php related files that had blank space I removed it and have not had a restart since! I am monitoring it and will definitely implement the test should it arise again. Thanks.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts