duanaixuan7385
duanaixuan7385
2016-10-29 23:40

nginx(MAMP)在index.php上返回404

已采纳

I'm trying to use nginx in MAMP but for some reason i can't view any .php file it always returns a 404.

I've got not problem with .html files.

Does someone know what's causing this and how i could solve this ?

My nginx.conf:

#user                         admin staff;
worker_processes             2;

pid        c:/MAMP/bin/nginx/pid/nginx.pid;

events {
    worker_connections       1024;
}

http {
    include                  mime.types;
    default_type             text/html;
    gzip                     on;
    gzip_types               text/css text/x-component application/x-javascript application/javascript text/javascript text/x-js text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;

    sendfile                 on;

    server {
        listen               80 default_server;

        # MAMP DOCUMENT_ROOT !! Don't remove this line !!
        root                 "C:/MAMP/htdocs/";

        access_log  c:/MAMP/logs/nginx_access.log;

        error_log  c:/MAMP/logs/nginx_error.log;

        location / {
            root C:\Git;
            index index.php index.html;
            autoindex on;
        }

        location ~* /MAMP(.*)$ {
            root             C:/MAMP/bin;
            index            index.php;

            location ~ \.php$ {
                try_files        $uri =404;
                fastcgi_pass     127.0.0.1:9100;
                fastcgi_param    SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include          fastcgi_params;
            }
        }

        location ~* /phpMyAdmin(.*)$ {
            root             C:/MAMP/bin;
            index            index.php;

            location ~ \.php$ {
                try_files        $uri =404;
                fastcgi_pass     127.0.0.1:9100;
                fastcgi_param    SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include          fastcgi_params;
            }
        }

        location ~* /phpLiteAdmin(.*)$ {
            root             C:/MAMP/bin;
            index            phpliteadmin.php index.php;

            location ~ \.php$ {
                try_files        $uri =404;
                fastcgi_pass     127.0.0.1:9100;
                fastcgi_param    SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include          fastcgi_params;
            }
        }

        location ~* /SQLiteManager(.*)$ {
            root             C:/MAMP/bin;
            index            index.php;

            location ~ \.php$ {
                try_files        $uri =404;
                fastcgi_pass     127.0.0.1:9100;
                fastcgi_param    SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include          fastcgi_params;
            }
        }

        #location /icons {
        #   alias /Applications/MAMP/Library/icons;
        #   autoindex on;
        #}

        #location /favicon.ico {
        #   alias /Applications/MAMP/bin/favicon.ico;
        #    # log_not_found off;
        #    # access_log off;
        #}

        location ~ \.php$ {
            try_files        $uri =404;
            fastcgi_pass     127.0.0.1:9100;
            fastcgi_param    SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include          fastcgi_params;
        }

        #location ~ /\. {
        #   deny all;
        #}

        # location ~* \.(gif|jpg|png|pdf)$ {
        #   expires          30d;
        # }

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

        # location ~* \.(txt|log)$ {
        #   allow 127.0.0.1;
        #   deny all;
        # }

        # location ~ \..*/.*\.php$ {
        #   return 403;
        # }

        #location /nginx_status {
        #   stub_status      on;
        #   access_log       off;
        #   allow            127.0.0.1;
        #   deny             all;
        #}
    }
}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • dougu4027 dougu4027 5年前

    Deep recommended I check the nginx logs so I did, I found the following line:

    [error] 14468#14504: *12 directory index of "C:/MAMP/htdocs/" is forbidden, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "localhost"
    

    I remembered I changed the Document_Root in MAMP itself but never did this in my nginx.conf

    After changing the Document_Root in the nginx.conf the .php files worked :)

    The line that I changed to the real Document_Root:

    # MAMP DOCUMENT_ROOT !! Don't remove this line !!
    root                 "C:/MAMP/htdocs/";
    
    点赞 评论 复制链接分享