windows server 2008 r2 - kan ikke få apache til at køre på port 80

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har en rackspace cloud server kører windows server 2008 r2. Jeg har afinstalleret IIS, fordi jeg vil installere Apache.


Jeg har installeret Apache, men det fejler hver gang jeg forsøger at køre det, når jeg lytter til port 80.


Jeg har kørt kommandoen netstat -aon | finderstr '80' og jeg ser følgende:


C: \ Brugere \ Administrator> netstat -aon | findstr '80'
  TCP 0.0.0.0:80 0.0.0.0:0 LYTNING 4
  TCP 10.180.15.249:139 0.0.0.0:0 LYTNING 4
  TCP [[::]]: 80 [[::]]: 0 LYTTER 4
  UDP 10.180.15.249:137 : 4
  UDP 10.180.15.249:138 : 4


Så hvad er disse ting der kører på port 80, og hvorfor kan jeg ikke få apache til at starte? Er der en alternativ port til at køre apache under det vil det fungere lige så godt som 80?

Bedste reference


For at aktivere port 80 på Windows Server 2008 R2 :


BEMÆRK: Dette antager, at IIS ikke er installeret . Jeg har tilføjet denne firewallregel for at aktivere Apache for at acceptere forbindelser på port 80.



  1. Klik på Start-> Kontrolpanel-> Windows Firewall

  2. Klik på 'Avancerede indstillinger' i venstre panel af Windows Firewall

  3. Klik på 'Indgående regler' i venstre panel af avancerede indstillinger

  4. Klik på 'Ny regel ...' i højre 'Actions' -panel

  5. Vælg 'Port' og klik på 'Næste>'

  6. Vælg 'TCP' og derefter 'Specifikke lokale porte:' (skal allerede vælges)

  7. Skriv 80 i feltet (kun nummeret) og klik på 'Næste>'

  8. Vælg 'Tillad forbindelsen' og klik på 'Næste>'

  9. Lad alle profiler kontrolleres og klik på 'Næste>'

  10. Indtast et navn og klik på 'Udfør'.



Din server skal nu kunne acceptere forbindelser på port 80.

Andre referencer 1


På en Windows-server, der kører MSSQL, deaktiveret MSSQL ReportServer (visningsnavn: SQL Server Reporting Services (MSSQLSERVER)) og World Wide Web Publishing-tjenester, løste problemet for mig. Du behøver ikke at fyre med firewallindstillinger eller ændre standardportkonfigurationer.

Andre referencer 2


Jeg kører en windows 2008 r2 med IIS og sql server. Jeg tilføjede en ekstra IP-adresse til at køre apache og konfigureret IIS for at binde til en af ​​IP-adresserne. Jeg løb ind i det samme problem og fandt forslag om at deaktivere SQL-rapporteringstjenester og WinRM. Disse løsninger fungerede ikke for mig.


Der er mange forskellige tjenester, der kan bruge http-serveren api (http.sys) og derefter opstå som pid 4.


Jeg fandt svaret på linket nedenfor. Kernen i linket er at gå til en kommandoprompt.

Skriv netsh tryk enter.

Indtast http og tryk enter.
tilføj iplisten ipaddress=x.x.x.x


http://msdn.microsoft.com/en-us/library/cc307219(v=vs.85).aspx[1]


Der er også en metode til at deaktivere http.sys i registreringsdatabasen, men jeg ved ikke, hvad forgreningerne af det måtte være.


Jeg håber det hjælper en anden, så de spilder ikke så meget tid som jeg forsøgte at finde opløsningen på.

Andre referencer 3


Jeg finder ud af, at jeg med succes kan tilføje firewallreglerne for at få min egen server til at køre på port 80 inden for vshost Visual Studio debug-miljøet, men når jeg kører som en tjeneste, virker den kun på lokal vært fra maskinen og ikke fra eksterne værter.


Meget frustrerende. Synes, at der er meget tydelige forhold i brandvejen, som ikke er eksponeret i Windows Firewall-konfigurationsgrænsefladen.

Andre referencer 4


Med IIS installeret skal du ændre bindinger på websteder i IIS, så ingen bruger 'alle tilgængelige adresser': 80 bindende. Du kan enten ændre portene eller ændre lytte IP-adresser.