Türkiye
Az konuş, çok çalış..

Forum

Bildirimler
Tümünü temizle

[Çözüldü] nginx 403 Forbidden hatası

7 Yazılar
3 Üyeler
0 Reactions
8,041 Görüntüleme
(@oktay454)
Gönderiler: 15
Eminent Member
Konu başlatıcı
 

Selamün Aleyküm Arkadaşlar

Manjaro Xfce sürümü kurulu, işlem yapacağım bilgisayarda.
Evvela size ne yapmak istediğimden bahsedeyim.
Okulumuzun yurdunda kalan hazırlık sınıfları için wifi üzerinden yabancı film vb. içerikleri yayınlayabileceğim bir ağ kurmak. Yaptığım işlemler şöyle.
www.film.izle adresini hosts dosyasından yönlendirdim. nginx kurulup basit bir html sayfasından bütün videoları göstermek, hatta direk ana web dizininden dosyaları koysam bile olur.
Ama problem şuradaki ben bilgisayara 3 tane 500GB hdd taktım. 2 tanesi aynı marka ve model hdd. Bu ikisini yazılımsal raid 0 yaparak hem hız hemde kapasite artışı sağlamak istedim. Bu raidi ise /home dizinine bağladım.
Fakat nginxin web dizinini /home/yurt/Web/WebDizini şeklinde ayarladığımda 403 Forbidden hatası veriyor. /usr/share/nginx/html klasöründenken problem yok. Ama ayarı /home/yurt/Web/WebDizini yapınca sıkıntı çıkarıyor. Hatta sadece ayar probleminde kaynaklanabilir diye varsayılan dizini elemeden, varsayılan dizinin içine WebDizini klasörünün bağını koyduğumda diğerlerine erişim sağlıyor fakat WebDizini klasörü içine girmiyor. Ne dosyaları açıyor nede klasörün içini gösteriyor. Yetkilendirmeyle ilgili bir sıkıntı var ama çözemedim.

Sorunu nasıl çözebiirim. Şimdiden teşekkürler

Ekleme:
konsoldaki nginx'in verdiği uyarı

015/12/24 06:54:21 [error] 5664#0: *6 "/home/yurt/Web/WebDizini/index.html" is forbidden (13: Permission denied), client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1", host: "www.film.izle"

Ekleme 2:
nginx.conf içeriği


#user html;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include      mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush    on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen      80;
        server_name  localhost;

        charset utf8;

        #access_log  logs/host.access.log  main;

        location / {
            root  /home/yurt/Web/WebDizini;
            index  index.html index.htm;
              autoindex on;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page  500 502 503 504  /50x.html;
        location = /50x.html {
            root  /home/yurt/Web/WebDizini;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ .php$ {
        #    proxy_pass  http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ .php$ {
        #    root          html;
        #    fastcgi_pass  127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen      8000;
    #    listen      somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root  html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen      443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root  html;
    #        index  index.html index.htm;
    #    }
    #}

}

Çözüm yolu

Sadece /home/yurt/Web/WebDizini klasörünün değil, içinde bulunduğu klasörlerinde okuma iznini kontrol edin. /home/yurt klasöründe diğer kullanıcıların erişimi kapalı imiş. İzini verince düzeldi. Yardım eden herkeze teşekkürler.

 
Gönderildi : 24/12/2015 3:35 am
tulliana
(@tulliana)
Gönderiler: 3512
Famed Member Admin
 

Sıkıntı kullanıcı izinleri ile alakalı. Dışardan erişime kullanıcı hesabı izin vermiyor. Kullanıcı dizinlerinin tamamının erişim izinlerini yapılandırıp öyle deneyin. /usr/share altında olması sıkıntı yapmaz çünkü herhangi bir kullanıcı ordaki herşeye okuma izni ile erişebilir. Ancak kullanıcının verisine erişemezsiniz teorik olarak. /yurt/Web/WebDizini yolundaki herşeyin izinlerini değiştirip deneyin ya da /home altına bir klasör açıp orada yapı bu işleri. Hatta /tmp altında yapın

archman.org - Bizi bilen iyi bilir, bilmeyen de kendi gibi bilir.!

 
Gönderildi : 24/12/2015 4:32 pm
(@oktay454)
Gönderiler: 15
Eminent Member
Konu başlatıcı
 

Sıkıntı kullanıcı izinleri ile alakalı. Dışardan erişime kullanıcı hesabı izin vermiyor. Kullanıcı dizinlerinin tamamının erişim izinlerini yapılandırıp öyle deneyin. /usr/share altında olması sıkıntı yapmaz çünkü herhangi bir kullanıcı ordaki herşeye okuma izni ile erişebilir. Ancak kullanıcının verisine erişemezsiniz teorik olarak. /yurt/Web/WebDizini yolundaki herşeyin izinlerini değiştirip deneyin ya da /home altına bir klasör açıp orada yapı bu işleri. Hatta /tmp altında yapın

Peki izinleri nasıl ayarlayabilirim. İzinler konusunda pek bir bilgim yok linuxta.

 
Gönderildi : 24/12/2015 8:04 pm
 ata
(@ata)
Gönderiler: 2110
Noble Member
 

/yurt/Web/Web  klasöre gidip sağ tıkladığınızda özellikleri seçerek  izinler şeklinde deneseniz .

Suskunluğum asaletimdendir,her lafa verilecek cevabım var. Ama bir lafa bakarım laf mı ? diye bir de söyleyene bakarım adam mı ? diye

                        

 
Gönderildi : 24/12/2015 10:27 pm
(@oktay454)
Gönderiler: 15
Eminent Member
Konu başlatıcı
 

/yurt/Web/Web  klasöre gidip sağ tıkladığınızda özellikleri seçerek  izinler şeklinde deneseniz .

Teşekkürler /home/yurt/Web/WebDizini klasörünün izinlerini tam erişim verdirmiştim. Fakat siz tekrar hatırlatınca bu sefer /home/yurt/ klasörünün yetkilerine de baktım erişi yetkisi yokmuş. Verince çalıştı. Sağolun. 🙂

 
Gönderildi : 25/12/2015 10:13 am
 ata
(@ata)
Gönderiler: 2110
Noble Member
 

rica ederim konu çözüldümü sizin için

Suskunluğum asaletimdendir,her lafa verilecek cevabım var. Ama bir lafa bakarım laf mı ? diye bir de söyleyene bakarım adam mı ? diye

                        

 
Gönderildi : 25/12/2015 11:17 am
(@oktay454)
Gönderiler: 15
Eminent Member
Konu başlatıcı
 

rica ederim konu çözüldümü sizin için

Evet, ama birde nginx'e php entegrasyonu var onun için ayrı bir konu açtım.

 
Gönderildi : 25/12/2015 11:29 am
Paylaş:
Translate »