我的名字lebnik,以及关于我的信息:
# id lebnik
uid=1000(lebnik) gid=1000(lebnik) groups=1000(lebnik),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev)
我的web服务器Apache从用户www数据运行php脚本,请检查以下内容:
root@debian /etc/apache2 # grep -R "APACHE_RUN_USER=" .
./envvars:export APACHE_RUN_USER=www-data
关于用户www数据的信息:
# id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data)
我创建php脚本文件.php:
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
echo 'script executed';
?>
接下来,我检查权限我的文件.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调用我的脚本:curlhttp://starsite.l/file.php请参阅:
script executed
为什么我的php脚本在文件权限仅为读写时执行?
执行权限阻止shell执行文件,但不会阻止另一个应用程序读取文本文件并执行它。php引擎不关心可执行权限位。