忍受我,我还是Linux新手。我有一个尝试访问用户帐户下的公用文件夹的Web服务器。
我正在运行一个试图访问应用程序共享公用文件夹中的维护页面的nginx服务器,并收到权限被拒绝的错误。
Application user: quotr
Webserver user: ubuntu
Application users primary group: app
Webserver users primary group: www-data
Application home: /home/quotr/app
Application shared public folder: /home/quotr/app/shared
Absolute path of maintenance file: /home/quotr/app/shared/public/system/maintenance.html
我最初只将www-data组添加到应用程序组,希望解决问题。当这不起作用的时候,我也把这个小组添加到另一个方向。
www-data:x:33:apache,quotr
ubuntu:x:1000:
app:x:1001:quotr,ubuntu,www-data
整个应用程序树的所有权属于 quotr:app 。当我开始收到权限问题时,我将路径突出显示部分的所有权更改为维护页面(/ home / quotr / app / shared / public / system / maintenance.html ) quotr:www-data 。
从/ var / www / quotr-public开始,然后向下工作:
# ls -la
drwxr-xr-x 4 quotr www-data 4096 Mar 3 21:49 .
drwxr-xr-x 5 quotr www-data 4096 Mar 3 21:49 ..
drwxr-xr-x 5 quotr www-data 4096 Mar 4 16:00 assets
drwxr-xr-x 3 quotr www-data 4096 Mar 4 19:03 system
# cd to system ls -la
drwxr-xr-x 3 quotr www-data 4096 Mar 4 19:03 .
drwxr-xr-x 4 quotr www-data 4096 Mar 3 21:49 ..
-rwxr-x--- 1 quotr www-data 3004 Mar 4 19:03 maintenance.html
drwxr-xr-x 3 quotr www-data 4096 Mar 3 21:51 pictures
我正在使用以下命令测试权限:
sudo -u www-data stat /home/quotr/app/shared/public/
导致权限被拒绝。
作为最后的尝试,我创建了以下符号链接:
quotr-public -> /home/quotr/app/shared/public/
我能够成功运行以下内容但不能更深入:
sudo -u www-data stat /var/www/quotr-public
我现在完全失去了问题所在。任何指导都将不胜感激。
我继续放弃权限,所以这些可能会有所不同,但请在下面找到所要求的输出。 输出'namei -lx /home/quotr/app/shared/public/system/maintenance.html'
Drwxr-xr-x root root /
drwxr-xr-x root root home
drwx------ quotr app quotr
drwxr-xr-x quotr app app
drwxr-xr-x quotr www-data shared
drwxr-xr-x quotr www-data public
drwxr-xr-x quotr www-data system
-rw-r--r-- quotr app maintenance.html
输出'namei -lx /var/www/quotr-public/system/maintenance.html'
Drwxr-xr-x root root /
drwxr-xr-x root root var
drwxrwsr-x root www-data www
lrwxrwxrwx ubuntu www-data quotr-public -> /home/quotr/app/shared/public/
Drwxr-xr-x root root /
drwxr-xr-x root root home
drwx------ quotr app quotr
drwxr-xr-x quotr app app
drwxr-xr-x quotr www-data shared
drwxr-xr-x quotr www-data public
drwxr-xr-x quotr www-data system
-rw-r--r-- quotr app maintenance.html
感谢。
答案 0 :(得分:0)
问题最终是/ home / quotr /目录中缺少组执行权限。运行后
chmod g+x quotr
问题已解决。