"Forbudt - Du har ikke tilladelse til at få adgang til/på denne server" Fejl


Apache-webserver er en af de mest populære og udbredte opensource-webservere takket være dens stabilitet og pålidelighed. Webserveren befaler et stort marked, især inden for webhostingplatforme.

Uanset hvad det måtte være, får du muligvis en "Forbudt - Du har ikke tilladelse til at få adgang til/på denne server" -fejl i din browser efter opsætning af dit websted. Det er en ganske almindelig fejl, og en god del af brugerne har oplevet det, mens de testede deres websted. Så hvad er det denne fejl?

Afmystificering af den forbudte fejl

Også kaldet 403 Forbidden-fejlen, Apache's 'Forbidden Error' er en fejl, der vises på en webside, når du forsøger at få adgang til et websted, der er begrænset eller forbudt. Det sprøjtes normalt i browseren som vist.

Derudover kan fejlen manifestere sig på flere måder i browseren som angivet nedenfor:

  • HTTP-fejl 403 - Forbudt
  • Forbudt: Du har ikke tilladelse til at få adgang til [bibliotek] på denne server
  • 403 Forbudt
  • Adgang nægtet Du har ikke tilladelse til at få adgang
  • 403 forbudt anmodning forbudt af administrative regler

Så hvad forårsager sådanne fejl?

'403 Forbidden Error' opstår på grund af følgende hovedårsager:

Denne fejl kan udløses på grund af forkerte fil-/mappetilladelser i webroot-biblioteket. Hvis standardfiltilladelserne ikke justeres for at give brugerne adgang til webstedsfilerne, er chancerne for, at denne fejl dukker op i en webbrowser, store.

Denne fejl kan også tilskrives en forkert konfiguration af en af Apache-konfigurationsfilerne. Det kan være en forkert parameter, der er inkluderet eller mangler direktiver i konfigurationsfilen.

Fastsættelse af '403 forbudt fejl'

Hvis du har stødt på denne fejl, er der et par trin, du kan tage for at afhjælpe dette.

Forkerte filtilladelser og katalogejerskab er kendt for at begrænse adgangen til webstedsfiler. Så for det første skal du sørge for at tildele filtilladelserne rekursivt til webroot-biblioteket som vist. Webroot-biblioteket skal altid have EXECUTE-tilladelser, og index.html -filen skal have LÆSETilladelser.

$ sudo chmod -R 775 /path/to/webroot/directory

Derudover skal du justere katalogejerskabet som vist:

$ sudo chown -R user:group /path/to/webroot/directory

Hvor brugeren er den almindeligt loggede bruger, og gruppen er www-data eller apache .

Endelig skal du genindlæse eller genstarte Apache-webserveren for at ændringerne skal træde i kraft.

$ sudo systemctl restart apache2

Hvis dette ikke løser problemet, skal du fortsætte til næste trin:

I Apaches hovedkonfigurationsfil /etc/apache2/apache2.conf skal du sikre dig, at du har denne blok med kode:

<Directory />
        Options FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

<Directory /usr/share>
        AllowOverride None
        Require all granted
</Directory>

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

Gem og afslut, og genstart derefter Apache.

Hvis du kører Apache på RHEL/CentOS-systemer, skal du sørge for at slappe af af adgangen til /var/www -mappen i /etc/httpd/conf/httpd.conf main Apache-konfigurationsfil.

<Directory "/var/www">
    AllowOverride None
    Require all granted
</Directory>

Gem derefter alle ændringer, og genindlæs Apache.

Hvis du efter at have prøvet alle disse trin stadig får fejlen, skal du kontrollere konfigurationen af dine virtuelle værtsfiler. Vi har en detaljeret artikel om, hvordan du kan konfigurere Apache Virtual-værtsfil på CentOS 8.

Jeg håber, at de angivne trin har hjulpet dig med at fjerne 403-fejlen.