我的名字lebnik,以及关于我的信息:
# id lebnik
uid=1000(lebnik) gid=1000(lebnik) groups=1000(lebnik),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev)
我的网络服务器Apache从用户www-data运行php-scripts,请检查:
root@debian /etc/apache2 # grep -R "APACHE_RUN_USER=" .
./envvars:export APACHE_RUN_USER=www-data
有关用户www-data的信息:
# id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data)
我创建了php-script file.php:
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
echo 'script executed';
?>
接下来,我检查权限my file.php
# ls -la
total 16
drwxrwxrwx 1 www-data www-data 4096 Oct 18 00:49 .
drwxrwxr-x 1 www-data www-data 4096 Oct 18 00:36 ..
-rw-rw-r-- 1 www-data www-data 225 Oct 18 00:46 file.php
我尝试用Apache调用我的脚本:curl http://starsite.l/file.php并看到:
script executed
为什么我的php脚本在文件权限只能读写时执行?
答案 0 :(得分:3)
执行权限阻止shell执行该文件,但它不会阻止另一个应用程序读取文本文件并执行它。 php引擎并不关心可执行权限位。