Ubuntu Server 10.10 kullanıyorum ve Nginx web server'ı apt-get install nginx
ile kurdum. /var/www/nginx-default/
adresinde varsayılan bir web sayfası oluşturur ve bu dizinde drwxr-xr-x 2 root root
izinleri bulunur.
http://localhost/
adresindeki varsayılan siteye eriştiğimde bu mesajı 403 Forbidden
sayfasında görüyorum.
Web sayfalarına erişebilmek için dosya izinlerini www kök dizininde nasıl ayarlamalıyım? Yoksa değiştirmek zorunda olduğum başka bir şey var mı?
Genelde web kökümdeki 755
(veya rwxr-xr-x
) 'a yapıyorum, ancak dizininiz zaten buna bağlı olduğundan, bununla karşılaştığınız sorun olduğunu sanmıyorum. nginx
dizininize erişebilmelidir. Ardından soru erişmeye çalıştığınız dosyanın izinleri (veya varlığının) haline gelir. Dizininizdeki dosyaların kullanıcı tarafından okunabilmesi gerekir nginx
olarak çalışıyor. Genellikle bu dosyaları 755
(dizininki ile aynı) olarak ayarlı olarak bırakıyorum. Tüm dizini Sudo chmod -R 755 /var/www/nginx-default/
yaparak değiştirebilirsiniz.
Ancak dizinde bir dizin dosyası yoksa, yine de aynı hatayı alırsınız. Dizin dosyası, dizin listelerinin etkin olmadığı bir dizin talep ettiğinizde kullanılır. En yaygın dizin dosyası index.html
. Bu varsayılan, yapılandırmanızdaki gibi düzenlenebilir:
location / {
index index.php;
}
nginx
'ın bu dizinde sizin için bir dosya listesi oluşturmasını istiyorsanız, basitçe açınız dizin indeksleme , şöyle:
location / {
autoindex on;
}
Webroot grubunuzu, nginx ve ayrıca php5-fpm tarafından kullanılan kullanıcı www-data
olarak değiştirmenizi öneririm.
Örneğin:
Sudo chown -R "$USER":www-data /webdirectory
Sudo chmod -R 0755 /webdirectory
kullanıcı benim kendi hesabınız olduğu (bu, dosyaları Sudo olmadan webroot'unuza kolayca koymanızı sağlar).