php脚本设644、配置文件设600、目录按用途设755或775;严禁777,确保web服务可读执行、禁止未授权写入,兼顾安全与功能。

Linux环境下设置PHP文件权限,关键不是“加PHP标签”,而是正确分配文件和目录的读写执行权限,确保Web服务器(如Nginx或Apache)能安全、稳定地读取和执行PHP脚本,同时防止未授权修改或执行。
下面分三类讲清楚怎么做:
PHP脚本文件权限:统一设为644
PHP源码文件(如 index.php、config.php、route.php)本身不需要执行权限,由PHP解释器读取执行。设为644最稳妥:
- 所有者可读写(
rw-→ 6) - 所属组和其他人仅可读(
r--→ 4)
这样既保证Web服务能读取,又避免被恶意覆盖或执行。
用命令批量设置:find /var/www/myapp -name "*.php" -type f -exec chmod 644 {} \;
配置文件权限:敏感文件必须设为600
含数据库密码、API密钥等的配置文件(如 database.php、.env、config.php),只允许所有者读写:
- 权限600(
rw-------) - 确保Web进程用户(如
www-data或nginx)不是所有者,且不属于该文件所属组
设置示例:chmod 600 /var/www/myapp/config/database.php chmod 600 /var/www/myapp/.env
目录与可写路径权限:区分用途,不盲目777
-
普通目录(如
app/、routes/、public/):设为755(rwxr-xr-x),允许Web服务进入和读取,禁止他人写入 -
上传目录(如
public/uploads/、storage/app/):设为755或775(若Web服务用户与开发者同组),绝不可777 -
缓存/日志目录(如
storage/cache/、storage/logs/):需确保Web服务用户有写权限,建议:chown -R www-data:www-data /var/www/myapp/storage chmod -R 755 /var/www/myapp/storage # 日志文件单独设为644,避免被直接下载 find /var/www/myapp/storage/logs -name "*.log" -exec chmod 644 {} \;
不复杂但容易忽略。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











