Sådan genstartes Apache

Hvis du har foretaget ændringer i Apache-konfigurationsfilen httpd.conf eller en af de andre inkluderede konfigurationsfiler såsom vhosts.d-filerne skal du genindlæse Apache-tjenesten for at ændringerne skal træde i kraft. Fra kommandolinjen gør du dette med apachectl-kommandoen. Den nøjagtige placering af denne kommando varierer efter den Unix- eller Linux-variant, du bruger (f.eks. Fedora, OSX, FreeBSD, Slackware, Mandrake, SUSE) og tidsindstillingerne for kompilering, men den er typisk tilgængelig på / usr / sbin / apachectl

Graceful genstart af Apache

Et eksempel på genstart af Apache elegant vises nedenfor:

/usr/sbin/apachectl graceful

Bemærk, at du enten skal køre som root eller bruge kommandoen” sudo “for at køre denne kommando .

Hvis Apache ikke allerede kører, startes den. Hvis den allerede kører, genindlæses den med de nye ændringer, men afbryder ikke aktive forbindelser, hvilket betyder, at enhver, der er midt i at downloade noget, fortsat vil være i stand til at downloade det.

Kører en konfiguration test først

Før genstart af Apache-tjenesten foretages en kontrol af konfigurationsfilerne for at sikre, at de er gyldige. Hvis der er en fejl i dem, vises fejlen, og Apache-tjenesten fortsætter med at køre med de gamle indstillinger. Du skal rette dine indstillinger, før du prøver at genstarte igen.

Du kan også bare kontrollere indstillingerne uden at genstarte Apache sådan:

/usr/sbin/apachectl configtest

Dette kontrollerer httpd.conf-filen og rapporterer, om filens syntaks er gyldig eller ej. En liste over fejl vises, herunder linjenumre, hvis der er nogen. Dette gør det let at isolere eventuelle problemer.

Tilgængelige indstillinger for apachectl-kommandoen

Følgende er alle tilgængelige indstillinger, der kan overføres til apachectl-kommandoen. Denne tekst kommer fra apachectl-mandsiden.

apachectl start: Start Apache-dæmonen. Giver en fejl, hvis den allerede kører.

apachectl stop: Stopper Apache-dæmonen.

apachectl genstart: Genstarter Apache-dæmonen ved at sende den en SIGHUP. Hvis dæmonen ikke kører, startes den. Denne kommando kontrollerer automatisk konfigurationsfilerne via configtest, før genstart startes for at sikre, at Apache ikke dør.

fullstatus: Viser en fuld statusrapport fra mod_status. For at dette skal fungere, skal du have mod_status aktiveret på din server og en tekstbaseret browser, såsom lynx, tilgængelig på dit system. URL’en, der bruges til at få adgang til statusrapporten, kan indstilles ved at redigere STATUSURL-variablen i scriptet.

apachectl status: Viser en kort statusrapport. Svarende til fuldstatus-indstillingen, bortset fra at listen over anmodninger, der aktuelt serveres, er udeladt.

apachectl yndefuld: Genstarter Apache-dæmonen yndefuldt ved at sende den en SIGUSR1. Hvis dæmonen ikke kører, startes den. Dette adskiller sig fra en normal genstart, da åbne forbindelser i øjeblikket ikke afbrydes. En bivirkning er, at gamle logfiler ikke lukkes med det samme. Dette betyder, at hvis det bruges i et logrotationsscript, kan det være nødvendigt med en betydelig forsinkelse for at sikre, at de gamle logfiler lukkes, før de behandles. Denne kommando kontrollerer automatisk konfigurationsfilerne via configtest, før genstart startes for at sikre, at Apache ikke dør.

apachectl configtest: Kør en konfigurationsfilssyntaks test. Det parser konfigurationsfilerne og rapporterer enten Syntaks Ok eller detaljerede oplysninger om den bestemte syntaksfejl.

apachectl help: Viser en kort hjælpemeddelelse .

Opdatering 19. marts 2007

Jeg skrev oprindeligt denne artikel til Apache 1.3, og da jeg brugte Gentoo Linux og OSX til at betjene sider med Apache. På mine nuværende openSUSE-maskiner, der kører Apache 2.2, er der ikke længere et apachectl-program. I stedet for ovenstående kommando kan du køre følgende meget lignende kommando og indstillinger i stedet:

/etc/init.d/apache2 start|stop|reload|restart|configtest

Kører /etc/init.d/apache2 på dens egne udsender en hjælpemeddelelse til detaljer om de forskellige muligheder som angivet nedenfor:

start – start httpd

startssl – start httpd med -DSSL

stop – stop httpd (sendign SIGTERM til forælder)

prøv genstart – stop httpd og hvis dette lykkes (dvs. hvis det kørte før), start det igen.

status – kontroller om httpd kører

genstart – stop httpd hvis kører; start httpd

genindlæs | yndefuld – udfør en yndefuld genstart ved at sende en SIGUSR1 eller start, hvis den ikke kører

configtest – udfør en konfigurationssyntaks test

extreme-configtest – prøv at køre httpd som ingen (registrerer flere fejl ved faktisk at indlæse konfigurationen, men kan ikke læse SSL-certifikater)

sonde – probe for nødvendigheden af en genindlæsning, giv det argument, der kræves for en genindlæsning. (ved at sammenligne conf-filer med pidfile-tidsstempel)

fuld server-status – dump en fuld status skærm; kræver lynx eller w3m og mod_status aktiveret

server-status – dump en kort statusskærm; kræver lynx eller w3m og mod_status aktiveret

hjælp – denne skærm

Write a Comment

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *