Php nginx 403禁止的错误+;mac+;拉维尔

Php nginx 403禁止的错误+;mac+;拉维尔,php,laravel,nginx,Php,Laravel,Nginx,这是我的nginx的内容 我当前的访问url是,并且我正在收到响应403禁止 我的服务器的documentroot是/Library/WebServer/Documents/ 当我访问时,它显示ok。我还可以看到index.html页面的内容 我不知道是怎么回事。我已经检查了stackoverflow中的前10页 server { server_name localhost; access_log /var/log/nginx/nginx.host.access.log

这是我的nginx的内容

我当前的访问url是,并且我正在收到响应
403禁止

我的服务器的documentroot是/Library/WebServer/Documents/

当我访问时,它显示ok。我还可以看到index.html页面的内容

我不知道是怎么回事。我已经检查了stackoverflow中的前10页

 server {

     server_name localhost;
     access_log  /var/log/nginx/nginx.host.access.log  main;

     root /Library/WebServer/Documents/;

     location / {
             #root html;
             index index.html index.htm index.php;
     }

     location /lampi {
             #autoindex on;
             if (!-e $request_filename){
                     rewrite  ^/lampi/(.*)$  /lampi/index.php?s=$1  last;
             }
     }

     location ~ \.php$ {
             include /usr/local/etc/nginx/fastcgi_params;
             fastcgi_pass 127.0.0.1:9000;
             fastcgi_index index.php;
             fastcgi_param   SCRIPT_FILENAME /Library/WebServer/Documents/lampi/$fastcgi_script_name;
     }

     location ~ [^/]\.php(/|$) {
             fastcgi_split_path_info ^(.+?\.php)(/.*)$;
             if (!-f $document_root$fastcgi_script_name) {
                     return 404;
             }

             fastcgi_param HTTP_PROXY "";
             fastcgi_pass 127.0.0.1:9000;

             fastcgi_index index.php;
             include fastcgi_params;
     }
     #location /images/ {
     #       root /usr/local/var/www;
     #}
 }

配置文件可能存在三个问题

使用
if(!-e$request\u filename)
会导致问题,因为它会检查目录是否存在,您可能应该使用
try\u files
(有关详细信息,请参阅):

SCRIPT\u FILENAME
的值将额外的
/lampi
添加到路径名中。使用以下两种方法之一(在本例中,两种方法的计算值相同):

例如:

location ~ \.php$ {
    try_files $uri =404;

    include /usr/local/etc/nginx/fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $request_filename;
}

location~[^/]\.php(/|$)
块令人困惑。通常,可以使用
location~\.php$
或类似
location~[^/]\.php(/|$)
的内容,具体取决于应用程序是否使用路径信息。删除不使用的块。有关详细信息,请参阅。

配置文件可能存在三个问题

使用
if(!-e$request\u filename)
会导致问题,因为它会检查目录是否存在,您可能应该使用
try\u files
(有关详细信息,请参阅):

SCRIPT\u FILENAME
的值将额外的
/lampi
添加到路径名中。使用以下两种方法之一(在本例中,两种方法的计算值相同):

例如:

location ~ \.php$ {
    try_files $uri =404;

    include /usr/local/etc/nginx/fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $request_filename;
}
location~[^/]\.php(/|$)
块令人困惑。通常,可以使用
location~\.php$
或类似
location~[^/]\.php(/|$)
的内容,具体取决于应用程序是否使用路径信息。删除不使用的块。有关详细信息,请参阅

location ~ \.php$ {
    try_files $uri =404;

    include /usr/local/etc/nginx/fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $request_filename;
}