Forum Moderators: phranque
My OS is Win 2000 Professional. Some time ago, I installed Apache ver 1.3. This worked fine. I recently installed Apache ver 2 on a college PC that had no prior Apache installation. This also went OK.
However, I have attempted to install Apache 2 on my own PC, and this has not gone quite so well.
Action
1) Removed Apache 1.3, using "Add / Remove Programs".
2) Deleted the "Apache Group" directory (It was still there after #1)
3) Downloaded and ran the correct Apache 2 for Win binary (
apache_2.0.54-win32-x86-no_ssl.msi) Symptoms
The wizard process is completed, and the Apache icon appears in the system tray, but no service is started.
Just prior to the appearance of the wizard's "Finish" button, two DOS window error messages appear (one then another after the first closes). Here's what they say (roughly translated from (partially) Swedish):
Message 1:
Normally only one user is allowed for each socket address (protocol/network address/port).
: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs Message 2:
[ (date) ][error] (OS 2) Cannot find file. : No installed sevice named "Apache2". I guess that fixing the error that causes #1 (ie getting a service set up) would remove the cause of the second error.
?!
Does anyone have any ideas how to fix this?
(While I'm trying to get this sorted out) Is there any way I can run Apache anyway, even if it's not a service.
(even after searching all day) I don't know how to find out
- What application is bound to what port
- How to change / remove these assignments
I have Apache up and running in the meantime by listening on port 8080, and started the service manually via a DOS command I picked up somewhere. I have to type in
http://127.0.0.1[blue]:8080[/blue]/ to visit the index page though!
I'm only running one server at present.
I tried
[blue]$> netstat -a[/blue] (it wouldn't take the [blue]-b[/blue] switch). There was something else listening to 80 according to the netstat, so I tried shutting things down gradually to see how it affected the output.
It seems that the culprit was Skype. I don't really understand this - it wasn't a problem before. Furthermore, Apache still works on port 80 when Skype is reactivated. It seems that one can't start Apache as a service listening on 80 when Skype is active.
For security reasons, you should consider using different machines for "personal" and "server" uses. There's no reason a server needs to run an internet telephony application, or that you would want a server running on a machine that contains any personal information about you. If you've got an old disused machine sitting around, put Apache on that -- Anything faster than about 400MHz should be just fine for a server, as long as it has sufficient disk capacity to serve your site. You'll only need a better machine if you serve a lot of database-driven script-generated pages for a lot of users.
Having two machines allows you to forward TCP/IP port 80 from the internet to your server at the router/firewall, while leaving your personal machines and network locked down.
Jim
There are indeed security implications, however I have no personal information on the machine that is either interesting or valuable (refer to above).