Fai seguire a Nginx i collegamenti simbolici


28

Nginx non segue collegamenti simbolici. Ottengo un errore 404. Nella mia directory, ho questo link:

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

ma i file memorizzati /path/to/dirnon sono stati trovati.



2
OK ho risolto con disable_symlinks off;. Grazie!
hellb0y77,

Nessun problema. Buona giornata!
Andy,

Digita la tua soluzione come risposta e accettala (è un comportamento corretto qui) o altrove elimina la tua domanda.
leonbloy,

Altre idee? Sto riscontrando questo problema, ho provato a disattivare disable_symlink; nel mio conf (anche se in realtà è comunque quello predefinito) e nulla funziona.

Risposte:


38

Inserisco il disable_symlinks off;mio nginx.conf e ho risolto, funziona benissimo!

http {
    disable_symlinks off;
}

Ho avuto nginx: [emerg] unknown directive "disable_symlinks" in /usr/local/etc/nginx/nginx.conf:22dopo aver fatto questo. Stavo usando nginx/1.8.0su Mac OS X.
Fiamma congelata il

2
@ frozen-flame è disable_symlinksstato aggiunto nella versione 1.1.15 ( vedi documenti ), quindi avrebbe dovuto funzionare. Sei sicuro di essere sulla 1.8.0 e che si trovava nel contesto consentito (http, server o posizione)?
Ville

2
Contesto da utilizzare disable_symlinks:http, server, location
Thiago Pereira

1

Ho trovato la soluzione su questo post .

Più specificamente, queste linee:

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

1

Usa l'opzione 'bind' montando le cartelle =)

sudo nano /etc/fstab

Genere:

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

(nessun collegamento simbolico e non dimenticare di riavviare vds / cpu)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.