简体   繁体   中英

403 forbidden error, in Nginx configuration for Wordpress site

I'm configuring a Nginx site for Wordpress and I'm getting this error:

2014/11/21 16:39:24 [error] 38741#0: *2 directory index of "/var/www/html/jurisprudencialaboral.dev/" is forbidden, client: 192.168.3.1, server: jurisprudencialaboral.dev, request: "GET / HTTP/1.1", host: "jurisprudencialaboral.dev"

This are the permissions assigned to that directory:

drwxr-xr-x  5 apache root 4096 Nov 21 16:28 jurisprudencialaboral.dev

And this is the jurisprudencia.dev server content file:

server {
       server_name jurisprudencialaboral.dev jurisprudencia jurisprudencialaboral;
       root /var/www/html/jurisprudencialaboral.dev;

        location / {
                try_files $uri $uri/ /index.php?q=$uri&$args;
        }

        error_page 404 /404.html;

        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  127.0.0.1:9000;
                #fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
                #fastcgi_param SCRIPT_FILENAME /var/www/html/jurisprudencialaboral.dev$fastcgi_script_name;
        }

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

        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }

        location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
        }

        # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
        # Keep logging the requests to parse later (or to pass to firewall utilities such as fail2ban)
        location ~ /\. {
                deny all;
        }

        # Deny access to any files with a .php extension in the uploads directory
        # Works in sub-directory installs and also in multisite network
        # Keep logging the requests to parse later (or to pass to firewall utilities such as fail2ban)
        location ~* /(?:uploads|files)/.*\.php$ {
                deny all;
        }

        # Add trailing slash to */wp-admin requests.
        rewrite /wp-admin$ $scheme://$host$uri/ permanent;

 # Directives to send expires headers and turn off 404 error logging.
        location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
               access_log off; log_not_found off; expires max;
        }

        # Uncomment one of the lines below for the appropriate caching plugin (if used).
        #include global/wordpress-wp-super-cache.conf;
        #include global/wordpress-w3-total-cache.conf;
}

I get it from here , what I'm doing wrong? Why the 403 error?

Well this is pretty clear. You request URI / so nginx tries to list the docroot content but as autoindex directive default value is false thus this action is not allowed and nginx returns the adequate HTTP 403 .

You forgot to set the index directive to serve an index file.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM