Nginx Root ve Alias Kullanımı

“ln” Komutu ve Kullanımı başlıklı yazı içerisinde symbolic ve hard link işlemlerine değinmiştim, ayrıca Alias Nedir? Alias İşlemleri başlıklı yazımda da sembolik linklendirmeyi konsol (console) bağlamında dile getirmiştim.

AA

Temelde linklendirmelerdeki bu davranış biçimi bir çok platform için aynı temel bağlamında geliştirilmektedir. Dolayısıyla temel mantığın kavranması nginx (engine x) için de karşılaşılabilecek sorunların önüne geçecektir. O halde nginx web server ortamında root ve alias kullanımını biraz detaylandıralım.

Nginx Root ve Alias

Nginx yapılandırması içerisinde root "tam yol" karşılığına sahip. Kullanımı içerisinde konum kısmı da dahil olacak şekilde ekleme yapılır.

Root Kullanımı

Örneğin, sıklıkla karşılaşılan bir anlatım olarak, statik dosyalarımızın yer aldığı /static isimli bir klasörümüz olsun. root ifademizde aşağıdaki girdinin sonucu olarak nginx /var/www/static/static yoluna bakacak ve 404 döndürecektir. Çünkü location olarak belirttiğimiz değer root yoluna ek olarak gözden geçirilir.

location /static/ {
    root /var/www/static/;
    autoindex off;
}

Root kullanımında doğru olacak girdimiz şu şekilde olmalıdır.

location /static/ {
    root /var/www/;
    autoindex off;
}

Alias Kullanımı

Root işlevinden farklı olarak alias belirtilen location’u alias değerine eklemeyecek, location değeri eşleştiğinde ilgili alias konumunu gözden geçirecektir. Örneğin aşağıdaki location link değeri olarak /var/www/ içeriğini yansıtacaktır ve dolayısıyla doğrudan /static klasör içeriğimizi görüntüleyemeyiz.

location /static/ {
    alias /var/www/;
    autoindex off;
}

Doğru kullanım ise şu şekilde olmalıdır.

location /static/ {
    alias /var/www/static/;
    autoindex off;
}

Bu kullanım çerçevesinde location eşleşmesi alias değeri olan /var/www/static/ yolunu yansıtır1.