Niech Nginx podąża za dowiązaniami symbolicznymi


28

Nginx nie korzysta z dowiązań symbolicznych. Otrzymuję błąd 404. W moim katalogu mam ten link:

lrwxrwxrwx  1 root root    48 Sep 23 08:52 modules -> /path/to/dir/

ale pliki zapisane w /path/to/dirnie zostały znalezione.



2
OK rozwiązałem za pomocą disable_symlinks off;. Dzięki!
hellb0y77

Żaden problem. Miłego dnia!
Andy

Wpisz swoje rozwiązanie jako odpowiedź i zaakceptuj je (tutaj jest uczciwe zachowanie) lub w innym miejscu usuń pytanie.
leonbloy

Jakieś inne pomysły? Mam ten problem, próbowałem odłączyć disable_symlinks; w moim conf (chociaż i tak jest to domyślnie) i nic nie działa.

Odpowiedzi:


38

Wstawić disable_symlinks off;w moim nginx.conf i postanowiłem, działa bez zarzutu!

http {
    disable_symlinks off;
}

Dostałem nginx: [emerg] unknown directive "disable_symlinks" in /usr/local/etc/nginx/nginx.conf:22po zrobieniu tego. Korzystałem nginx/1.8.0z systemu Mac OS X.
Frozen Flame

2
@ frozen-flame disable_symlinkszostał dodany w wersji 1.1.15 ( patrz dokumentacja ), więc powinien był działać. Czy na pewno korzystasz z wersji 1.8.0 i czy znajduje się w dozwolonym kontekście (http, serwer lub lokalizacja)?
Ville,

2
Kontekst do użycia disable_symlinks:http, server, location
Thiago Pereira

1

Znalazłem rozwiązanie w tym poście .

Mówiąc dokładniej, te linie:

fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;

1

Użyj opcji „bind”, montując foldery =)

sudo nano /etc/fstab

Rodzaj:

/path/where/my/big/files_dir /var/www/myhost/media_dir bind defaults,bind 0 0

(brak dowiązań symbolicznych i nie zapomnij zrestartować vds / cpu)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.