如何让Nginx使用主目录作为root

如何让Nginx使用主目录作为root

我已经在我的笔记本电脑上设置了一个本地服务器用于 Web 开发,并检查我正在开发的网站,我应该将我的代码库放在/var/www/example.domain这不太方便,我希望 Nginx 检索文件并从我的主目录解析 PHP,比如/home/projects/test-one/但如果我添加这个目录,root它会给我一个502错误的网关错误

这是我的配置:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    server_name _;

    location / {
            root /home/amirreza/Projects/escribir/;
            index index.php index.html index.htm;
    }
    location ~* \.php$ {
            fastcgi_index   index.php;
            fastcgi_pass    127.0.0.1:9000;
            include         fastcgi_params;
            fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
            fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
    }
}

/etc/nginx/sites-available/default,我使用的是 Debian 11

- - - - - - - - -编辑 - - - - - - - - - -

我正在使用 fpm 但我的配置不包括它,我将我的站点可用/默认更改为:

location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/var/run/php/php-fpm.sock;
    }

而且我的主文件夹中的文件权限也存在问题,我这样更改了它:

1-我使用以下命令将我的用户添加到 www-data 组sudo usermod -aG www-data amirreza

2-然后将我的代码库的权限设置为 664(而不是 644),以便我也可以编辑它: -rw-rw-r-- 1 amirreza www-data 22 دسامبر 16 13:19 index.php

相关内容