Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP local server Invalid request (Unexpected EOF)

Tags:

php

After every execution, regardless of said execution - when using Chrome web browser the PHP local server throws this error:

Invalid request (Unexpected EOF) \n

It's not causing any visible issues; however as it's a persistent issue I was wondering if something may bite me later.

Any ideas?

Note: it happens roughly 10 seconds after any page is executed.

Further note: This happens after all executions, even when the files are ended correctly:

<?php echo 'hey'; ?> 

would still throw the aforementioned error.

[Thu Mar 19 09:39:55 2015] 127.0.0.1:53923 [200]: /admin [Thu Mar 19 09:40:05 2015] 127.0.0.1:53924 Invalid request (Unexpected EOF)

This is the full error.

like image 822
Jack hardcastle Avatar asked Mar 19 '15 09:03

Jack hardcastle


5 Answers

This is a known bug.

From https://bugs.php.net/bug.php?id=60471:

[2011-12-08 15:01 UTC] lolautruche at gmail dot com Description:
------------
From time to time, built-in server with router script logs this kind of stuff :

[Thu Dec 8 13:39:29 2011] 127.0.0.1:50358 Invalid request (Unexpected EOF)

This happens quite randomly, whatever the script has a close tag or not, whatever it has a blank line after close tag or not.

And the explanation:

[2012-02-23 18:45 UTC] michal dot pipa dot xsolve at gmail dot com
...
Chromium has feature called "Predict network actions to improve page load performance" and its enabled by default. It works this way, that if HTML page has links to some resources, than Chromium opens about 10 TCP connections in advance. And then if browser has less than 10 resources to fetch, unused connections times out after 10 seconds. And this (empty payload) causes PHP server to display "Invalid request (unexpected EOF)" message.

It is a harmless error from the PHP built-in server.

like image 119
Gary Avatar answered Nov 18 '22 21:11

Gary


This could be related to Chrome specifically and its network prediction feature. So try to disable that feature first. That's why it works for you in Incognito mode, because probably it's disabled in that mode.

You can find this option in Chrome Settings and click on 'Show advanced settings'. Should be there in Privacy section.

Use a prediction service to help complete searches and URLs typed in the address bar or the app launcher search box

like image 3
kenorb Avatar answered Nov 18 '22 22:11

kenorb


On Laravel, I realize this thread hasn't been active for a while now but I found a solution completely unrelated to what other people have been posting. So I realized that I was getting this very error because I didn't have an application key set for my application. You can find out more about application keys in this other Stack Overflow question. Before attempting to generate an application key, make sure you've run the following command in the root directory of your application.

composer install

From what I've read, when you create a new application via the

laravel new application

command, you should have a file called .env by default. This was not my case, I had to rename the .env.example file to .env manually. Once you have done the two above steps, run this command in the root directory of your app

php artisan key:generate

This solved the OP's error for me. Hope it can help someone in the future.

like image 3
Gaboik1 Avatar answered Nov 18 '22 21:11

Gaboik1


This is bug on PHP. It was fixed on PHP 7.2

like image 2
rsc Avatar answered Nov 18 '22 21:11

rsc


On Laravel 4.2, I resolve that when I clear the cache with command : php artisan cache:clear


Complete list of commands is available with : php artisan list

like image 1
Nolwennig Avatar answered Nov 18 '22 21:11

Nolwennig