Veranlassen Sie Nginx, Symlinks zu folgen

28

Nginx folgt keinen symbolischen Links. Ich erhalte einen 404-Fehler. In meinem Verzeichnis habe ich diesen Link:

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

Die in gespeicherten Dateien wurden /path/to/dirjedoch nicht gefunden.

hellb0y77
quelle
Schauen Sie sich nginx.org/en/docs/http/…
Andy
2
OK, ich habe es gelöst mit disable_symlinks off;. Vielen Dank!
hellb0y77
Kein problem, schönen Tag noch!
Andy
Bitte geben Sie Ihre Lösung als Antwort ein und akzeptieren Sie sie (faires Verhalten hier) oder löschen Sie Ihre Frage an anderer Stelle.
Leonbloy
Irgendwelche anderen Ideen? Ich habe dieses Problem und habe versucht, disable_symlinks zu deaktivieren. in meinem conf (obwohl das eigentlich sowieso der standard ist) und nichts funktioniert.

Antworten:

38

Ich disable_symlinks off;füge in meine nginx.conf ein und habe mich aufgelöst, funktioniert einwandfrei!

http {
    disable_symlinks off;
}
hellb0y77
quelle
Ich habe nginx: [emerg] unknown directive "disable_symlinks" in /usr/local/etc/nginx/nginx.conf:22danach bekommen. Ich habe nginx/1.8.0Mac OS X verwendet.
frozen-flame
2
@ frozen-flame disable_symlinkswurde in Version 1.1.15 hinzugefügt ( siehe Dokumentation ), es hätte also funktionieren sollen. Sind Sie sicher, dass Sie mit 1.8.0 arbeiten und dass es sich im zulässigen Kontext befindet (http, Server oder Speicherort)?
Ville
2
Verwendungszweck disable_symlinks:http, server, location
Thiago Pereira
1

Ich habe die Lösung für diesen Beitrag gefunden .

Genauer gesagt, diese Zeilen:

fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
Jonathan Martins
quelle
1

Verwenden Sie die Option 'Binden', indem Sie Ordner einhängen =)

sudo nano /etc/fstab

Art:

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

(keine symlinks & nicht vergessen vds / cpu neu zu starten)

phpWebStudio
quelle