Sådan aktiveres Apache Userdir-modul på RHEL / CentOS
User Directory eller Userdir er et Apache-modul, der gør det muligt at hente brugerspecifikke mapper via en Apache-webserver ved hjælp af http://example.com/~user/
syntaksen.
For eksempel, når mod_userdir-modulet er aktiveret, vil brugerkonti på systemet være i stand til at få adgang til indhold i deres hjemmekataloger med verden via Apache-webserver.
I denne artikel viser vi dig, hvordan du aktiverer Apache-userdirs (mod_userdir) på RHEL-, CentOS- og Fedora-servere ved hjælp af Apache-webserver.
Denne vejledning forudsætter, at du allerede har installeret Apache-webserver på din Linux-distribution. Hvis du ikke har det, kan du installere det ved hjælp af følgende procedure ...
Trin 1: Installer Apache HTTP-server
For at installere Apache-webserver skal du bruge følgende kommando på din Linux-distribution.
# yum install httpd [On CentOS/RHEL] # dnf install httpd [On Fedora]
Trin 2: Aktivér Apache Userdirs
Nu skal du konfigurere din Apache-webserver til at bruge dette modul i konfigurationsfilen /etc/httpd/conf.d/userdir.conf
, som allerede er konfigureret med de bedste muligheder.
# vi /etc/httpd/conf.d/userdir.conf
Valider derefter indholdet sådan som nedenfor.
# directory if a ~user request is received. # # The path to the end user account 'public_html' directory must be # accessible to the webserver userid. This usually means that ~userid # must have permissions of 711, ~userid/public_html must have permissions # of 755, and documents contained therein must be world-readable. # Otherwise, the client will only receive a "403 Forbidden" message. # <IfModule mod_userdir.c> # # UserDir is disabled by default since it can confirm the presence # of a username on the system (depending on home directory # permissions). # UserDir enabled tecmint # # To enable requests to /~user/ to serve the user's public_html # directory, remove the "UserDir disabled" line above, and uncomment # the following line instead: # UserDir public_html </IfModule> # # Control access to UserDir directories. The following is an example # for a site where these directories are restricted to read-only. # <Directory "/home/*/public_html"> ## Apache 2.4 users use following ## AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS ## Apache 2.2 users use following ## Options Indexes Includes FollowSymLinks AllowOverride All Allow from all Order deny,allow </Directory>
For at give nogle få brugere adgang til UserDir
-mapper, men ikke nogen anden, skal du bruge følgende indstilling i konfigurationsfilen.
UserDir disabled UserDir enabled testuser1 testuser2 testuser3
For at give alle brugere adgang til UserDir
-mapper, men deaktiver dette for nogle få brugere, skal du bruge følgende indstilling i konfigurationsfilen.
UserDir enabled UserDir disabled testuser4 testuser5 testuser6
Når du har foretaget konfigurationsindstillingerne efter dine krav, skal du genstarte Apache-webserveren for at anvende de seneste ændringer.
# systemctl restart httpd.service [On SystemD] # service httpd restart [On SysVInit]
Trin 3: Oprettelse af brugermapper
Nu skal du oprette en public_html
-mappe/kataloger i bruger/brugerens hjemmekataloger. For eksempel opretter jeg her en public_html
-mappe under tecmints brugermappe.
# mkdir /home/tecmint/public_html
Anvend derefter de korrekte tilladelser på brugerens hjemmebibliotek og public_html-mapper.
# chmod 711 /home/tecmint # chown tecmint:tecmint /home/tecmint/public_html # chmod 755 /home/tecmint/public_html
Indstil også den korrekte SELinux-kontekst for Apache-homedirs (httpd_enable_homedirs).
# setsebool -P httpd_enable_homedirs true # chcon -R -t httpd_sys_content_t /home/tecmint/public_html
Trin 4: Test aktiveret Apache Userdir
Endelig skal du kontrollere Userdir ved at pege din browser på serverens værtsnavn eller IP-adresse efterfulgt af brugernavnet.
http://example.com/~tecmint OR http://192.168.0.105/~tecmint
Hvis du vil, kan du også teste HTML-sider og PHP-oplysninger ved at oprette følgende filer.
Opret /home/tecmint/public_html/test.html fil med følgende indhold.
<html> <head> <title>TecMint is Best Site for Linux</title> </head> <body> <h1>TecMint is Best Site for Linux</h1> </body> </html>
Opret /home/tecmint/public_html/test.php fil med følgende indhold.
<?php phpinfo(); ?>
Det er alt! I denne artikel har vi forklaret, hvordan man gør det muligt for Userdir-modulet at give brugerne mulighed for at dele indhold fra deres hjemmekataloger. Hvis du har spørgsmål vedrørende denne artikel, er du velkommen til at spørge i kommentarfeltet nedenfor.