Come si riavvia Apache?


249

Sono passato da SLES a Ubuntu e ora voglio riavviare il mio server locale. In SLES ho usato:

rcapache2 restart

ma questo in qualche modo sembra non funzionare in Ubuntu. :(

Come riavvio Apache?

Risposte:


364

sudo service apache2 restart per il modo in cui è preso in prestito da Red Hat.


1
Penso che servicesia il modo LSB e dovrebbe funzionare nella maggior parte delle distribuzioni, ora che Debian e Ubuntu alla fine l' hanno capito.
Marius Gedminas,

10
sudo restart apache2non funziona Ubuntu 12.04. Non sono sicuro di altre versioni di Ubuntu.
saji89,

2
@ saji89 devi fare sudo service apache2 restart, quindi funzionerà.
Kevdog777,

9
sudo restart apache2non funziona in Ubuntu 14.04. sudo service apache2 restartsta lavorando duro.
toesslab,

105

Vuoi riavviare Apache o ricaricare con garbo la sua configurazione?

Tutti stavano rispondendo alla prima domanda; puoi fare il secondo con

sudo service apache2 reload

Ricaricare con grazia è un po 'più veloce e non ci sono tempi di inattività.

C'è un avvertimento: se i file di configurazione di Apache contengono un errore (ad esempio, configura un file di registro in una directory che non esiste), il server potrebbe uscire silenziosamente senza stampare alcun messaggio di errore sulla console. La maggior parte degli altri errori vengono rilevati da quello apache2ctl configtestche service apache2 reloadviene eseguito prima di eseguire l'effettiva ricarica apache2ctl graceful.


1
Sì! Utilizzare Graceful è molto meglio se si desidera riavviare senza dare il via ai visualizzatori del proprio sito Web!
tommed

Trovo che sia un vantaggio del riavvio che se Apache non è in esecuzione, inizierà . -> Ricarica anche l' avvio ?
Torben Gundtofte-Bruun,

Non credo - ancora peggio, il ricaricamento interromperà l'esecuzione di un apache se si commette un errore di sintassi nel file di configurazione.
Marius Gedminas,

3
Esegui sempre sudo apache2ctl configtestprima di eseguire un riavvio corretto . Il riavvio grazioso non riuscirà e apache verrà arrestato se config ha un errore di sintassi.
Mikko Rantalainen,

@MikkoRantalainen: grazie, ho modificato la risposta per eliminare il raw apache2ctl gracefule invece lo consiglio solo service apache2 reload, che esegue il configtestprecedente graceful.
Marius Gedminas,

26

Il modo raccomandato in Ubuntu per avviare / arrestare i servizi (non solo Apache) è usare i comandi start / stop / reload (che in realtà sono collegamenti simbolici al programma initctl , parte di upstart ).

Per i servizi che utilizzano gli /etc/init.dscript legacy , lo script corrispondente verrà chiamato con i parametri corretti; per i servizi che utilizzano l'infrastruttura upstart, la transizione dell'evento appropriata verrà segnalata al demone upstart tramite initctl .

Quindi, per avviare / arrestare / ricaricare / riavviare apache su Ubuntu, puoi usare:

sudo start apache2
sudo stop apache2
sudo reload apache2
sudo restart apache2

20
sudo /etc/init.d/apache2 restart

Naturalmente si può scambiare restartper stop, starte (credo)reload


2
Quando lo fai sotto Ubuntu recente, ricevi un messaggio su come farlo nel nuovo modo, anche se eseguirà comunque il comando desiderato.
jfmessier,

Non mi ero reso conto che Apache fosse già passato a Upstart.
Oli

Non vedo più quel messaggio.
Tim


11

Come Marius ha detto grazioso dovrebbe essere usato per riavviare:

sudo apache2ctl graceful

o

sudo apache2ctl graceful-stop

per fermare Apache con grazia.

Questi comandi attendono il completamento di tutte le richieste di pagine Web prima di riavviare / arrestare il server Web in modo che l'utente non ottenga mezza pagina Web.


4

Per prima cosa controlla il tuo stato usando questo comando

sudo service apache2 status

quindi interrompere il servizio in esecuzione

sudo service apache2 stop

quindi usa questo comando:

sudo /opt/lampp/lampp start

questa soluzione ha funzionato per me.


2

se si installa la versione Apache 2.4 nel proprio sistema, per avviare il riavvio o arrestare il server Apache sul proprio sistema locale, è necessario eseguire il comando seguente

./apachectl start

oppure è possibile utilizzare il riavvio , interrompere anche in base alle proprie esigenze. questo è un codice testato


1

puoi usare i servizi per riavviare Apache

service apache2 restart

e puoi usare tutte le funzionalità per esso (Stop - Start - Ricarica)


1

Il modo migliore per riavviare il server Apache è utilizzando il comando seguente:

$ sudo service apache2 restart

Modifica È possibile utilizzare il comando seguente:

$ sudo /etc/init.d/apache2 restart

1
Fonte di comando: riavvia Apache Ubuntu
Razor Rassh il

0
sudo systemctl restart apache2

systemctl - Controlla il gestore del sistema e del sistema systemd.

systemctl può essere utilizzato per introspettare e controllare lo stato del gestore di sistema e servizi "systemd".


-1

se sei root: (In Ubuntu il root è disabilitato, penso, che usa il comando 'sudo'!)

$ /etc/init.d/apache stop
$ /etc/init.d/apache start
$ /etc/init.d/apache restart
$ /etc/init.d/apache reload 

(Se hai usato a2ensite o a2dissite, devi ricaricare la configurazione di apache)


rootnon è disabilitato, non ha una password se non la dai tu stesso.
Mikael Auno,

1
si //stop apachesuppone che sia un commento? in tal caso, la notazione shell standard sarebbe #stop apache, //non funziona in bash
Mikel

L'account root @MikaelAuno è disabilitato se non ha una password
T0xicCode

1
@ xav0989 Questa è abbastanza la questione della definizione. Sicuramente non puoi accedere direttamente come root, o accedere come rootin alcun modo che richiede rootla password per quella materia, ma ci sono altri modi per diventare root. Prova ad esempio sudo -iseguito da whoamie vedrai che hai effettivamente effettuato l'accesso come root. Inoltre, se lo fai ps aux | grep rootvedrai che hai già molti processi sul tuo sistema in esecuzione come root. Quindi, probabilmente, rootnon è disabilitato.
Mikael Auno,

@MikaelAuno o sudo -E -s. Per disabilitato, suppongo che ciò che si intendeva è che non è possibile accedere direttamente come root, ma è comunque possibile eseguire processi come root.
T0xic
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.