Nginx 403 Запрещен для файлов просто для того, чтобы быть внутри домашней папки - PullRequest
0 голосов
/ 27 февраля 2019

Я установил стандартный Nginx на Fedora 29 с использованием стандартного dnf.

Я изменил пользователя на «root» в верхней части nginx.conf.Я также попытался с пользователем, установленным на "имя пользователя" в верхней части nginx.conf.Я также попробовал это, оставив пользователя по умолчанию "nginx".

Внутри блока сервера:

root /usr/share/nginx/html (THIS WORKS!)
root /home/username/path/to/destination (403 FORBIDDEN)

Я скопировал index.html в каждую папку, где находится место, где работаети назначение, которое запрещено, например так:

/usr/share/nginx/html/index.html (THIS WORKS!)
/usr/share/nginx/index.html (THIS WORKS!)
/usr/share/index.html (THIS WORKS!)
/usr/index.html (THIS WORKS!)
/index.html (THIS WORKS!)
/home/index.html (403 FORBIDDEN)
/home/username/index.html (403 FORBIDDEN)
/home/username/path/index.html (403 FORBIDDEN)
/home/username/path/to/index.html (403 FORBIDDEN)
/home/username/path/to/destination/index.html (403 FORBIDDEN)

Я постепенно изменил корневую строку блока сервера nginx.conf на каждую из указанных выше папок, и каждый раз перезапускаю nginx:

root    /usr/share/nginx/html;              (THIS WORKS!)
root    /usr/share/nginx;                   (THIS WORKS!)
root    /usr/share;                         (THIS WORKS!)
root    /usr;                               (THIS WORKS!)
root    /;                                  (THIS WORKS!)
root    /home;                              (403 FORBIDDEN)
root    /home/username;                     (403 FORBIDDEN)
root    /home/username/path;                (403 FORBIDDEN)
root    /home/username/path/to;             (403 FORBIDDEN)
root    /home/username/path/to/destination; (403 FORBIDDEN)

Каждый раз:

sudo service nginx restart

Вот разрешения для каждой из этих папок:

drwxr-xr-x. 2 root root /usr/share/nginx/html
drwxr-xr-x.   3 root root /usr/share/nginx
drwxr-xr-x.  279 root root /usr/share
drwxr-xr-x.  12 root root /usr
dr-xr-xr-x.  19 root  root /
drwxr-xr-x.  4 root  root /home
drwxr-xr-x. 26 username username /home/username
drwxrwxrwx. 15 username username /home/username/path
drwxr-xr-x.  4 username username /home/username/path/to
drwxr-xr-x.  6 username username /home/username/path/to/destination

Вот разрешения для файла index.html, который был скопирован во всевышеуказанные папки:

-rw-r--r--. 1 root root 3700 Nov 20 12:32 index.html

1 Ответ

0 голосов
/ 25 мая 2019

Я думаю, вы не должны были менять пользователя в nginx.conf.Самая распространенная рекомендация - оставить пользователя по умолчанию www-data .

Лучше добавить ваше username в группу www-data или что-то в этом роде.Попробуйте поискать в этом направлении, возможно эта ссылка вам поможет: https://askubuntu.com/a/9411

...