problema di accesso a localhost su Mac OS X Mavericks ... funzionava bene fino al mio riavvio oggi

14

Sono perplesso riguardo al problema che sto avendo e mi piacerebbe davvero aiutarlo a risolverlo.

Ho un iMac con Mac OS X Mavericks 10.9.2

Ho impostato il mio apache per servire i documenti dalla radice del server / Volume / siti /

Sto usando gli host Dynamic Virtual, quindi aggiungendo semplicemente una directory con il suffisso * .dev, diventa un host virtuale.

Il mio file hosts è piuttosto semplice:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1         localhost
255.255.255.255   broadcasthost
::1               localhost
fe80::1%lo0       localhost

Il mio file httpd-vhosts.conf è il seguente:

#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at 
# <URL:http://httpd.apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#

#allow access to the Hosts directory where your sites are
<Directory "/Volumes/sites">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    #you could configure the following to only allow access from localhost
    Order allow,deny
    Allow from all
</Directory>

#get the server name from the Host: header
UseCanonicalName Off
VirtualDocumentRoot /Volumes/sites/%0/

Tutto ha funzionato. E non ho cambiato nulla nel mio file httpd.conf.

Eppure non riesco a caricare localhost

Inoltre non riesco a caricare 127.0.0.1

Ho eseguito il comando sudo lsof -i :80 | egrep "PID|LISTEN" per vedere se qualche PID era in ascolto sulla porta 80. I risultati erano vuoti.

Ho provato a riavviare apache e anche a fermarmi e quindi a lanciare apache usando

sudo apachectl stop sudo apachectl start

sudo apachectl restart

Niente funziona.

Ho controllato se Apache era in esecuzione emettendo il comando httpd -v

Il ritorno era:

Server version: Apache/2.2.26 (Unix)
Server built:   Dec 10 2013 22:09:38

Ho provato a connettermi a localhost e 127.0.0.1 tramite la riga di comando con il seguente risultato:

alisamii at alisamii in ~
$ telnet localhost 80
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
Trying fe80::1...
telnet: connect to address fe80::1: Connection refused
telnet: Unable to connect to remote host
alisamii at alisamii in ~
$ telnet 127.0.0.1 80
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host
alisamii at alisamii in ~
$ lynx http://localhost

Looking up localhost
Making HTTP connection to localhost
Alert!: Unable to connect to remote host.

lynx: Can't access startfile http://localhost/
alisamii at alisamii in ~
$ lynx http://127.0.0.1

Looking up 127.0.0.1
Making HTTP connection to 127.0.0.1
Alert!: Unable to connect to remote host.

lynx: Can't access startfile http://127.0.0.1/
alisamii at alisamii in ~

Aiuta l'aiuto.

    
posta Ali Samii 23.05.2014 - 18:27
fonte

6 risposte

34

Ho avuto lo stesso problema. Ho cancellato una delle cartelle del mio progetto e si è rotta. In questo caso le configurazioni del sito dovrebbero essere rimosse da httpd-vhosts.conf e httpd.conf.

Prova ping 127.0.0.1

apachectl configtest può aiutarti a rilevare il problema.

    
risposta data 09.08.2014 - 09:42
fonte
5

Il problema potrebbe essere che il file hosts potrebbe essere stato danneggiato dalla codifica ASCII originale. Ho cancellato tutti gli spazi e inserito le schede, ho eseguito sudo killall -HUP mDNSResponder (puoi farlo invece di riavviare) e dopo, ha funzionato.

    
risposta data 15.09.2014 - 23:45
fonte
3

Nel mio caso, il problema era che la cartella / private / var / log / apache2 / era scomparsa per ragioni sconosciute. Ricreando con

sudo mkdir /private/var/log/apache2

e riavvio di apache con

sudo apachectl restart

ha fatto il trucco!

    
risposta data 15.09.2015 - 10:22
fonte
2

Le connessioni rifiutate sono più comunemente causate da un server che non sta ascoltando la porta.

Errori di sintassi o errori generali del file di configurazione uccideranno apache all'avvio (di solito senza riferire a log di errori o terminale).

Prova a eseguire sudo apachectl configtest e controlla se emette messaggi di errore.

    
risposta data 08.09.2015 - 10:37
fonte
-1

È specifico per Mac. Innanzitutto devi abilitare la condivisione sul Web. Per Maveric può essere fatto come in questo tutorial. link Secondo, per Mac il traffico se filtrato via pfctl (cioè pfctl uomo) in Maveric e ipfw (man ipfw) per la versione precedente di Mac OS se hai bisogno di più della porta 80

    
risposta data 20.10.2014 - 15:49
fonte
-2

Questo potrebbe aiutare con la tua domanda. link

    
risposta data 13.09.2014 - 03:23
fonte

Leggi altre domande sui tag