nginx 403 Verboten unter CentOS (Vagrant)

nginx 403 Verboten unter CentOS (Vagrant)

Was ich bisher geprüft habe:

Protokolle – sie sind leer, eine neue VM wurde gebootet.

Berechtigungen:

$ namei -l /var/www/awesome/    
f: /var/www/awesome/    
dr-xr-xr-x root     root     /    
drwxr-xr-x root     root     var    
drwxrwxr-x www-data www-data www
drwxrwxr-x www-data www-data awesome

Dem Host-OS-Ordner, der die Vagrant-Datei enthält, wird 777 zugewiesen.

SELinux aktiviert.

Trotzdem erhalte ich sogar innerhalb der VM mit curl localhost eine 403.

Hier ist die Nginx-Konfiguration für awesome.dev

server {
   listen                *:80;

   server_name           awesome.dev www.awesome.dev;
     index  index.html index.htm index.php;

   access_log            /var/log/nginx/awesome.dev.access.log;
   error_log             /var/log/nginx/awesome.dev.error.log;

   location / {
     root  /var/www/awesome;
     try_files $uri $uri/ index.php /index.php$is_args$args;
   }
   location ~ \.php$ {
     root  /var/www/awesome;
     index  index.html index.htm index.php;
     fastcgi_index index.php;
     fastcgi_param SCRIPT_FILENAME $request_filename;
     fastcgi_param APP_ENV dev;
     fastcgi_pass 127.0.0.1:9000;
     fastcgi_split_path_info ^(.+\.php)(/.*)$;
     include fastcgi_params;
   }
   sendfile off;
 }

Wie kann ich das beheben?

Antwort1

Hatte das gleiche Problem mit CentOS 7. Gelöst durch:

Check getenforce

Hier sollte „Durchsetzen“ angezeigt werden.

Dann habe ich ausgeführt chcon, um den HTTPD-Sicherheitskontext zu ändern und den Zugriff zu ermöglichen.

chcon -Rt httpd_sys_content_t /path/to/web/content

Nginx neu laden

systemctl restart nginx

Jetzt werden meine Seiten geladen.

Antwort2

Was ist der Inhalt /var/www/awesome/und welche Berechtigungen hat es?

index.htmlWenn keine oder index.htmeine Datei vorhanden ist index.php, versucht Nginx, den Verzeichnisinhalt aufzulisten, was standardmäßig verboten ist (vgl.autoindexDokumentation).

verwandte Informationen