General HTTP service does not work anymore / can not be start - Windows Server 2016

G

GermanComputerGuy

Hey folks,

I'm new at a job in an new company, and can't find a solution on a problem concerning the „http“-service on a Windows 2016 Server.

The problem is, that the general "http" service doesn't work any more.
I'm not talking about the "WinHTTP" service or something similiar.
Just the regular "http" service, which every modern windows system has.
My coworker already tried to fix this issue, but didn’t made it.

Unfortunately I don't know how this happened exactly, so I tried to get information from the eventlog.

That's what I can get from the eventlog:
---------------------------------------------------------
- The very first appearance I can see was an event id 7001 concerning the "W3SVC" Service:
The "W3SVC" couldn't be started because it depends on the "http" service, which isn't started.
Same with the "IISADMIN","WINRM" and the "Spooler" services.
- Some minutes later, "IISADMIN" couldn't be started because of the depency to the "http" service, which is deactivated or not connected to activated devices.
-
Then I can see a reboot.
- After booting the above named services can't start because "http" service is possibly not installed
- These messages repeat for some days.
- 10 Days later I see my coworker installed a new service „http“. Butheinstalledit as an usermode service.
- That leads to following error when starting the service: service „http“ can’t be run in win32 mode.
----------------------------------------------------------------


So I tried to simulate the last error on my local machine, and figured out how to „fix“ it.
"http" service has to be started in Kernel Mode. So, because of my coworker already installed a new service, I could install the service again as a kernelmode service.

I did this on my local machine with:


sc create httptest binPath= system32\drivers\http.sys type= kernel start= demand error= normal


("httptest" because I didnt’t wan’t to modify my orginal "http" service)

Starting the „httptest“ service returned no error and the service seemed to be running.

So I thought I could do exactly the same thing on the Server, except using the service name „http“ instead of „httptest“.

I deleted my coworker‘s "http" service, and installed a new service with the same command like above, except the service name.I got the message that the service was created succesfully.

So I tried to start the service and got error ID 2: „The system cannot find the file specified“

This didn't happen on my local machine…
I tried formatting/changing the path but it doesn’t work....
I tried relative paths, absolute paths, UNC, and much more...
I tried changing the binPath param to my desktop, where I copied the "http.sys" file to too. But same problem...
I don’t get the "Path not found" error, so the given binPath should be formatted correctly...
The http.sys file really exists is in the system32\drivers directory...
Reboot didn’t help.

So there must be a way to reinstall oder reconfigure this "http"-Service without reinstalling the whole OS.

I’m googling for almost more than a week and can’t find a solution or even the same problem.
Most issues I found online concern WinHTTP or are fixed with just starting the "http"-service.

The server works as a Hyper-V and an IIS.
IIS doesn’t run because of the depencies, but the Hyper-V is actively in use.

So it’s a productive system...

Anyone has an idea what I can do ?



Sorry for my bad english, I hope you understand my problem :)

Continue reading...
 

Similar threads

Back
Top Bottom