403 È proibito quando si tenta di accedere a una cartella nella root del documento di nginx

Quando accedo index.php, funziona bene. Ma su localhost / pset7, dà un 403.

Ecco il registro delle autorizzazioni,

  • Come distribuire le modifiche al database di staging pur mantenendolo in sincronia con il database master di produzione?
  • Il mio file / var / log / btmp è enorme! Cosa dovrei fare?
  • centos 6.2 dà l'authorization di lettura negata quando root ha impostato le autorizzazioni di lettura a tutti gli utenti
  • Problema di routing IPTPables PPTP
  • Come posso sincrone due database?
  • Il process di lavoratore Nginx è uscito
  • -rw-r--r--. 1 root root 51 Jul 31 14:21 index.html -rw-r--r--. 1 root root 51 Jul 31 14:15 index.php drwxrwxr-x. 5 my_user my_user 4096 Jul 31 15:13 pset7 

    Ho bisogno di eseguirlo sul webserver quindi per favore dimmi come impostare le autorizzazioni corrette e risolvere questo problema.

    Utilizzo di LEMP su CentOS.

    Se hai bisogno di altre informazioni / registri, basta chiedere.

    Edit1, nginx config- http://pastebin.com/K3fcWgec

    Grazie.

  • Come faccio ad installare mount.cifs su CentOS 5.5 64 bit?
  • Come posso get CentOS 5 a riconoscere un aumento dello spazio di unità sul mio VM?
  • Come posso determinare quanta memory richiede al mio server MySQL?
  • mysql - imansible drop tabella non esiste, imansible creare tabella esiste
  • Server cancellato dopo "yum remove python"
  • Server Linux carico-equilibrato su Internet?
  • 2 Solutions collect form web for “403 È proibito quando si tenta di accedere a una cartella nella root del documento di nginx”

    Il motivo per cui questo sta accadendo è che nginx non consente di elencare i contenuti della directory per impostazione predefinita.

    Quindi, se nginx non riesce a trovare i file specificati con la directory index in una directory, restituirà il codice di errore 403.

    Se si desidera consentire l'elenco delle directory, è ansible utilizzare la direttiva autoindex nel block di configuration:

     location /pset7 { autoindex on; } 

    Dovresti anche spostare le direttive root e index dalla location / block al livello di server , in modo che il tuo config sia simile:

     server { listen 80; server_name localhost; root /var/www/html; index index.html index.htm index.php; location /pset7 { autoindex on; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } 

    Il motivo che stai vedendo è che il "pset7" non viene aggiunto alla configuration Nginx. Tutto quello che devi fare è aggiungere quanto segue alla configuration Nginx

      location /pset7 { root /var/www/html; # Put this somewhere else, probably in the beginning of your config instead of here, if possible. index index.html index.htm index.php; } 
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.