每次我编辑一个文件(在本例中是 PHP 文件)并通过用户“xtreme”通过 FTP 将其上传到我的 VPS 时,该文件在访问时都会输出以下内容:
Warning: Unknown: failed to open stream: Permission denied in Unknown on line 0 Fatal error: Unknown: Failed opening required '/home/foo/www/bar/ul.php' (include_path='.:/usr/share/php:/usr/share/pear') in Unknown on line 0
通过 SSH进入chmod -R 2770 /home/foo
可以修复该问题,但这根本不实用。每次编辑文件时我都必须这样做。
我已经在 Google 上搜索过 Server Fault,但无济于事。有人能解释一下如何修复这个问题吗?
编辑:将权限设置为 755 后:
drwxr-sr-x 2 xtreme www-data 4096 May 4 05:38 .
drwxr-sr-x 4 xtreme www-data 4096 May 2 17:50 ..
-rwxr-xr-x 1 xtreme www-data 0 May 2 17:11 index.php
-rwxr-xr-x 1 xtreme www-data 1849 May 4 05:38 ul.php
将文件上传到 FTP 后:
drwxr-sr-x 2 xtreme www-data 4096 May 4 05:41 .
drwxr-sr-x 4 xtreme www-data 4096 May 2 17:50 ..
-rwxr-xr-x 1 xtreme www-data 0 May 2 17:11 index.php
-rwx------ 1 xtreme www-data 1849 May 4 05:41 ul.php
那么,上传文件后权限设置为我假设的 0700?
答案1
我设法修复了它。我只是像这样编辑了我的 vsftpd 设置:
chown_upload_mode=0755
file_open_mode=0755
local_umask=000