上一篇
服务器各目录的作用你都清楚了吗?
- 行业动态
- 2025-04-18
- 5
服务器各目录具备特定功能,/bin存放基础命令,/etc存储系统配置,/var保存日志及动态数据,/home管理用户文件,/boot存放启动文件,/dev映射硬件设备,/tmp用于临时文件,/usr包含用户程序,确保系统高效运行与维护管理。
核心功能目录
/var/www(或/var/www/html)
- 用途:主网站文件存储位置,存放HTML、CSS、JavaScript、图片等静态资源。
- 关键点:
- 推荐对不同类型的文件(如图片、CSS)使用子目录分类(如
/static
)。 - 部署时需设置严格权限(如所有者
www-data
,目录755/文件644)。 - 通过
.htaccess
(Apache)或nginx.conf
(Nginx)配置重定向与缓存规则。
- 推荐对不同类型的文件(如图片、CSS)使用子目录分类(如
/etc
- 用途:系统与服务的全局配置文件。
- 关键服务配置:
- Apache:
/etc/apache2/sites-available/
存放虚拟主机配置。 - Nginx:
/etc/nginx/conf.d/
或/etc/nginx/sites-enabled/
。 - MySQL:
/etc/mysql/my.cnf
调整数据库性能参数。
- Apache:
- 安全建议:定期备份配置文件,避免明文存储敏感信息(使用环境变量或加密工具)。
用户与权限管理目录
/home
- 用途:普通用户的个人目录,用于隔离不同用户的数据与权限。
- 最佳实践:
- 为每个网站管理员创建独立账号,限制SSH访问权限。
- 通过
chmod
和chown
控制用户对服务器资源的访问范围。
/root
- 用途:超级管理员(root)的专属目录。
- 风险提示:
- 避免直接以root身份运行Web服务。
- 使用
sudo
命令执行特权操作,并启用操作日志审计。
系统运行支撑目录
/tmp
- 用途:临时文件存储,如会话数据、缓存片段。
- 注意事项:
- 定期清理(通过
cron
任务或工具如tmpwatch
)。 - 避免存储敏感信息,防止权限破绽导致数据泄露。
- 定期清理(通过
/usr
- 子目录功能:
/usr/bin
:系统基础命令(如curl
、wget
)。/usr/local
:手动安装的第三方软件(如自定义编译的PHP版本)。
- 维护建议:通过包管理器(
apt
/yum
)更新系统级应用,减少手动干预。
日志与监控目录
/var/log
- 关键日志文件:
- 访问日志:
/var/log/apache2/access.log
或/var/log/nginx/access.log
。 - 错误日志:
/var/log/apache2/error.log
或/var/log/nginx/error.log
。 - 系统日志:
/var/log/syslog
(Linux通用)。
- 访问日志:
- 分析工具:使用
GoAccess
、ELK Stack
(Elasticsearch, Logstash, Kibana)实现可视化监控。
安全与备份规范
权限隔离
- Web文件所有者设为
www-data
,禁止直接写入权限。 - 数据库凭证独立存储于环境变量(如通过
/etc/environment
加载)。
- Web文件所有者设为
自动备份策略
- 使用
rsync
同步/var/www
至远程存储(如AWS S3)。 - 数据库每日导出至加密压缩包(通过
mysqldump
+cron
)。
- 使用
版本控制
- 通过Git管理代码,设置
post-receive
钩子实现自动部署。 - 配置
.gitignore
排除临时文件与敏感配置。
- 通过Git管理代码,设置
引用说明
本文参考以下权威资料以确保技术准确性:
- Linux文件系统层级标准(Filesystem Hierarchy Standard)
- Apache HTTP Server官方文档
- Nginx配置最佳实践指南
- MySQL 8.0安全加固手册