Potrzebuję zezwolić na dostęp do katalogu z łączami sym w ~ / Sites z mojego Apache. Symlinkowałem takie katalogi
ln -s ~/path/to/the/source/directory/ ~/Sites/source-link-here
Teraz za każdym razem, gdy uruchamiam żądanie GET, otrzymuję odpowiedź 403
curl http://localhost/~username/source-link-here/
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /~username/source-link-here
on this server.</p>
...
Jak mogę powiedzieć Apache, aby zezwalał na dostęp do katalogu z dowiązaniami symbolicznymi i jak powiedzieć Apache, aby zezwalał na to tylko w przypadku żądań wysłanych z hosta lokalnego.
Każda pomoc jest mile widziana.
Z poważaniem
robertj
źródło
W rzeczywistości konieczne są tylko pierwsze 2 kroki od odpowiedzi Emjay oraz restart apache, oto, co zadziałało dla mnie:
Włącz udostępnianie sieciowe na MAC, przechodząc do Prefrences systemu -> Udostępnianie -> Sprawdź włączone udostępnianie internetowe
Edytuj
username.conf
plik znajdujący się w nim/private/etc/apache2/users
i dodaj dyrektywę FollowSymLinks :sprawdź konfigurację Apache
uruchom ponownie apache
Teraz Apache będzie obsługiwał dowiązania symboliczne w twoim
Sites
katalogu.źródło
Wystąpił
403 forbidden
błąd. To, co rozwiązało mój problemhttpd-vhosts.conf
, zastąpiłem poniższą konfiguracjęz
To samo zrobiło dla wszystkich tagów lokalizacji. Rozwiązało to problem z pozwoleniem.
źródło
Options FollowSymLinks
w httpd.conf dla odpowiedniego konteneraZnajdź ciąg DocumentRoot w conf, zapamiętaj jego wartość. Sprawdź zawartość
<Directory "docroot here">...</Directory>
sekcji pod kątem ciągu opcji. Jeśli brakuje opcji - dodaj ciągOptions FollowSymLinks
, jeśli istnieje, ale nie ma FollowSymLinks - dodaj ten parametr, aby mieć coś podobnegoOptions Indexes FollowSymLinks
. Uruchom ponownie Apache po modyfikacji config. Wynik testu, napisz go tutajPrzeczytaj dokumenty Apache
źródło
<Directory /usr/share/web>
. Zauważ, że potem musisz zrestartować apache używającsudo /usr/sbin/apachectl restart
Czasami dzieje się tak, jeśli:
Rozwiązałem ten problem, tworząc nowy folder w systemie plików ext4 i tworząc symboliczne łącze do
/var/www
.źródło