以下是一般推荐的 Web 服务器文件权限设置,这些设置在保证安全的同时不会影响正常的客户端访问:
一、目录权限:
- 推荐权限:755 (drwxr-xr-x)
- 含义:所有者可读、可写、可执行;组用户和其他用户可读、可执行
二、文件权限:
- 推荐权限:644 (rw-r--r--)
- 含义:所有者可读、可写;组用户和其他用户只可读
三、配置文件和包含敏感信息的文件:
- 推荐权限:600 (rw-------)
- 含义:只有所有者可读、可写;其他人无权限
四、可执行脚本(如果有):
- 推荐权限:755 (rwxr-xr-x)
- 含义:所有者可读、可写、可执行;组用户和其他用户可读、可执行
五、上传目录(如果有):
- 推荐权限:755 (drwxr-xr-x)
- 含义:所有者可读、可写、可执行;组用户和其他用户可读、可执行
设置这些权限,您可以使用以下命令:
# 设置所有目录权限
find /path/to/your/website -type d -exec chmod 755 {} \;
# 设置所有文件权限
find /path/to/your/website -type f -exec chmod 644 {} \;
# 设置配置文件权限(根据需要调整文件名)
chmod 600 /path/to/your/website/includes/config.php
# 设置可执行脚本权限(如果有)
chmod 755 /path/to/your/website/some_script.php
# 设置上传目录权限(如果有)
chmod 755 /path/to/your/website/uploads
特别注意事项:
- /path/to/your/website 应替换为您网站的实际路径。
- 确保 Web 服务器用户(通常是 www-data、apache 或 nginx)对所有需要读取的文件和目录有读取权限。
- 如果您的网站需要写入某些文件或目录(如日志、缓存等),确保这些位置对 Web 服务器用户是可写的。
- 对于 includes 目录中的敏感文件(如配置文件),可以考虑设置更严格的权限,如 600。
- 如果您使用版本控制系统(如 Git),确保 .git 目录不可从 Web 访问。
- 定期检查文件权限,特别是在进行更新或添加新文件后。
- 在应用这些权限之前,强烈建议您:
- 备份整个网站。
- 在非生产环境中测试这些更改。
- 确保您了解每个命令的作用。
- 如果您使用共享主机或不确定如何操作,请咨询您的主机提供商。