Så här fixar du mod_authz_host Apache-fel i Linux



Prova Vårt Instrument För Att Eliminera Problem

När du installerar apache2-tjänsten på Red Hat Enterprise Linux, Arch, Scientific Linux, Debian Server, Ubuntu Server eller någon av de andra distributionerna som stöder den kan du upptäcka att du får ett fel angående mod_authz_host-modulen som förhindrar körningen av tjänsten . Du skulle troligen hitta det här felet som ett problem varje gång du startar om apache2-tjänsten. Detta fel kommer vanligtvis i form av en syntaxvarning om den första raden i fil, men du kan teoretiskt få ett annat fel.



Oavsett vilken linje du kan ha problem med har fixen lite att göra med mod_authz_host som inte installeras eller till och med laddas i RAM. Om du får det här felet betyder det faktiskt att apache2-servertjänsten laddar korrekt modul. Problemet har bara att göra med det faktum att ett direktiv inte är på sin plats någonstans, och omläggning av koden borde lösa ditt problem ganska snabbt. Observera att du ibland kommer att se instruktioner för att installera mod_authz_host i apache2, vilket är irrelevant för denna diskussion. Dina fel kommer inte från brist på ett specifikt paket och kommer inte heller från någon form av ouppfylld beroende. Hur utvecklarna valde att uttrycka dessa fel leder till dessa vanliga missuppfattningar.



Korrigering av moduldirektiven restrict.conf

För diskussionens skull använder vi Linux-distributionscyklopedin på distrowatch.com för våra exempel. Den officiella apache2-dokumentationen använder dev.example.com som ett exempel, och i alla fall vill du inte använda någon av dessa adresser.



Öppna fil med en textredigerare. Eftersom detta finns i en skyddad katalog måste du ha root-åtkomst. Vi använde , men du kan också använda vi eller en annan textredigerare du föredrar. Du behöver inte ens nödvändigtvis använda en konsolredigerare, men se till att använda gksu istället för sudo om det är lämpligt för att göra det.

När du har laddat filen, var noga med att läsa, till exempel:



Beställ neka, tillåt

Förneka från alla

Tillåt från distrowatch.com

Denna text borde bara finnas inuti block. Notera mellanslag i den första taggen. Om du har den textraden som flyter runt utanför några block, antingen lägg till taggar runt den eller flytta den så att den läser som sådan:

Beställ neka, tillåt

Förneka från alla

Tillåt från distrowatch.com

Kom ihåg att du måste ersätta distrowatch.com med den faktiska webbadressen du arbetar med. Om du hittar några rader som refererar till dev.example.com direkt har du antingen kopierat dem direkt från exempelkoden eller så läggs de till som standard. Domain.com-domänen finns bara för att illustreras i tekniska dokument och tjänar inget verkligt syfte. Den officiella dokumentationen på httpd.apache.org/docs/2.2/howto/access.html hänvisar verkligen till dem. Du kan säkert ta bort dessa när du lägger till den nya texten i.

Om du någonsin skulle behöva inkludera en katalog i din restrict.conf-fil, kan du ersätta den taggar med taggar, men du måste se till att behålla utrymmet i den första taggen en gång till. Se till att spara dokumentet och stäng det innan du startar om apache2-tjänsten. Du borde inte ha några ytterligare problem härifrån.

Det här är vad apache-servern menar när den returnerar ett fel som:

Det faktiska felet skulle ha ett radnummer i stället för octothorpe, men det indikerar att direktiven inte är säkert inneslutna i nämnda taggar. Du kanske vill navigera direkt till raden i felet när du felsöker manuset för att kontrollera vad som är fel med det. Medan felet i fråga kommer att berätta att Apache-felloggen kan ha mer information kommer det förmodligen bara att förstärka samma begrepp som diskuteras här.

Framtida syntaxfel kan korrigeras på ett liknande sätt. Du kanske upptäcker att apache2-tjänsten efter att ha fixat den, spottar ut ett annat fel. Detta är normalt, så konstigt som det kanske låter eftersom det bara kör kod fram till första raden det hittar ett problem med. Om det fanns problem längre fram, skulle det aldrig ha kommit till dem. Om du har några sådana problem, var uppmärksam på radnumret när du redigerar fil. Om du använder nano för att redigera filen kan du alltid hålla ned Ctrl-tangenten och trycka på C-tangenten för att hitta vilken linje din markör är för närvarande. Detta gör att felsökningen går mycket smidigare.

Du kanske upptäcker att du har flera block som flyter runt på ett sådant sätt att det inte är knutet till någonting. Var och en av dessa behöver ha taggar på sig. Ta bort de extra blocken när du upptäcker att du har flera kopior av samma URL med samma exakta direktiv eftersom dessa dubbletter kan orsaka problem. Du behöver i allmänhet bara ha en enda kopia av någon specifik URL, eftersom du inte ska skicka ytterligare direktiv om en till apache2-servern eftersom de i slutändan kan motverka varandra.

3 minuter läst