Buat Nginx ikuti symlinks


28

Nginx tidak mengikuti tautan simbolik. Saya mendapatkan kesalahan 404. Dalam direktori saya, saya memiliki tautan ini:

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

tetapi file yang disimpan /path/to/dirtidak ditemukan.


Silahkan lihat di nginx.org/en/docs/http/…
— Andy

2
OK saya diselesaikan dengan disable_symlinks off;. Terima kasih!
— hellb0y77

Tidak masalah. Semoga harimu menyenangkan!
— Andy

Harap ketikkan solusi Anda sebagai jawaban dan terima (itu perilaku yang adil di sini) atau hapus pertanyaan Anda di tempat lain.
— leonbloy

Ada ide lain? Saya mengalami masalah ini, saya mencoba mematikan disable_symlinks; di conf saya (meskipun itu sebenarnya default lagian) dan tidak ada yang berfungsi.

Jawaban:


38

Saya memasukkan disable_symlinks off;nginx.conf saya dan saya memutuskan, berfungsi dengan baik!

http {
    disable_symlinks off;
}

Saya mendapat nginx: [emerg] unknown directive "disable_symlinks" in /usr/local/etc/nginx/nginx.conf:22setelah melakukan ini. Saya menggunakan nginx/1.8.0pada Mac OS X.
— beku-api

2
@ beku-api disable_symlinksditambahkan dalam versi 1.1.15 ( lihat dokumen ), jadi seharusnya sudah berfungsi. Apakah Anda yakin menggunakan 1.8.0, dan berada dalam konteks yang diizinkan (http, server, atau lokasi)?
— Ville

2
Konteks untuk digunakan disable_symlinks:http, server, location
— Thiago Pereira

1

Saya menemukan solusinya pada posting ini .

Lebih khusus, garis-garis ini:

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

1

Gunakan opsi 'bind' dengan memasang folder =)

sudo nano /etc/fstab

Mengetik:

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

(tidak ada symlink & jangan lupa restart vds / cpu)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.