Home  >  Q&A  >  body text

403-forbidden - nginx 403 forbidden under Debian 7

I installed nginx php5-fpm locally in Debian Wheezy but encountered 403 forbidden. This problem is very unclear. Please give me some advice.


Enter localhost/phpinfo.php and the display will be normal

You can enter localhost and a 403 error will pop up

nginx error log display

2013/07/05 16:27:06 [error] 7351#0: *12 directory index of
"/var/www/install/" is forbidden, client: 127.0.0.1, server:
localhost, request: "GET /install/ HTTP/1.1", host: "localhost"

Permissions /var/www -R 775

nginx configuration:

#cat /etc/nginx/nginx.conf

    user www-data;  
    worker_processes 1;  
    pid /var/run/nginx.pid;

    events {
        worker_connections 768;
        # multi_accept on; }

    http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # Logging Settings
        ##

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

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*; }

#cat /etc/nginx/sites-enabled/default

    server {
        listen   80; ## listen for ipv4; this line is default and implied
        #listen   [::]:80 default_server ipv6only=on; ## listen for ipv6

        #root /usr/share/nginx/www;
        root /var/www;
        index index.html index.php;

        # Make site accessible from http://localhost/
        server_name localhost;
        server_name_in_redirect off;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                # try_files $uri $uri/ /index.html;
                try_files $uri $uri/ /index.php?$args;
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
        }
        location /doc/ {
                alias /usr/share/doc/;
                autoindex on;
                allow 127.0.0.1;
                allow ::1;
                deny all;
        }

    # Rewrite for Fork CMS   

    location ~ ^/(backend|install|api(\/\d.\d)?(\/client)?).*\.php$ {
    # backend/install/api are existing dirs, but should all pass via the front
    try_files $uri $uri/ /index.php?$args;   }

    location ~ ^(.+\.php)(.*)$ {
      include fastcgi_params;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;   }   

    # gzip   
    gzip on;   
    gzip_disable "MSIE [1-6]\.(?!.*SV1)"; # disables gzip compression for browsers that don't support it (in this case MS Internet Explorer before version 6 SV1).   gzip_http_version 1.1;   gzip_vary on; # This sets the response header Vary: Accept-Encoding. Some proxies have a bug in that they serve compressed content to browsers that don't support it. By setting the Vary: Accept-Encoding header, you instruct proxies to store both a compressed and uncompressed version of the content.   gzip_comp_level 6;   gzip_proxied any;   gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js ;   gzip_buffers 16 8k;

      # client caching   
    location ~ \.(css|js|html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml|asf|asx|wax|wmv|wmx|avi|bmp|class|px|doc|docx|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|swf|tar|tif|tiff|wav|wma|woff|wri|xla|xls|xlsx|xlt|xlw|zip)$ {
    expires 31d;
    add_header Pragma "public";
    add_header Cache-Control "public, must-revalidate, proxy-revalidate";       }

    # End of Fork
世界只因有你世界只因有你2712 days ago1014

reply all(4)I'll reply

  • 怪我咯

    怪我咯2017-05-16 17:31:01

    Solved, the meaning of the answer is the same as @Evian's, the difference is the method, which is to remove it

    try_files $uri $uri/ /index.php?$args;

    in

    $uri/

    Please refer here for the original text

    reply
    0
  • PHP中文网

    PHP中文网2017-05-16 17:31:01

    autoindex on;
    

    reply
    0
  • 滿天的星座

    滿天的星座2017-05-16 17:31:01

    There is no index.html and index.php in the document_root

    reply
    0
  • 高洛峰

    高洛峰2017-05-16 17:31:01

    Need to enable: autoindex: on;

    reply
    0
  • Cancelreply