Apache启用`mod_userdir`模块支持个人用户主目录(~username)访问

冬强酱_2620

冬强酱_2620

2026-09-24

563人浏览

原创

apache启用mod_userdir后,用户可通过http://服务器地址/~用户名访问其家目录网站,核心步骤为:加载mod_userdir模块、配置userdir路径(如public_html)并禁用root等敏感账户、在中设置require all granted及必要options。

apache 启用 mod_userdir 后,用户可通过 http://服务器地址/~用户名 访问其家目录下的网站内容,无需为每个用户单独配虚拟主机。核心在于模块加载、路径映射和权限放行三步,缺一不可。

确认并启用 mod_userdir 模块

Apache 2.4 默认可能未启用该模块。需检查模块是否已加载:

  • /etc/httpd/conf.modules.d/00-base.conf(CentOS/RHEL)或 /etc/apache2/mods-available/userdir.load(Ubuntu/Debian)中,确保存在 LoadModule userdir_module modules/mod_userdir.so 或对应启用语句
  • RHEL/CentOS 系统可运行 sudo httpd -M | grep userdir;Ubuntu/Debian 运行 apache2ctl -M | grep userdir 验证是否列出 userdir_module
  • 若未启用,RHEL/CentOS 可直接编辑配置文件添加;Ubuntu/Debian 推荐执行 sudo a2enmod userdir,再 sudo systemctl reload apache2

配置 UserDir 路径与禁用敏感账户

修改 /etc/httpd/conf.d/userdir.conf(RHEL)或 /etc/apache2/mods-enabled/userdir.conf(Debian),重点设置两部分:

Apache Superset Dashboard and SQL Exploration Skill
Apache Superset Dashboard and SQL Exploration Skill

Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。

下载
  • 取消 UserDir disabled 的注释,或直接删除该行;然后添加 UserDir public_html(目录名可自定义,如 www
  • 明确禁用高危账户,例如添加 UserDir disabled root admin,防止通过 ~root 暴露系统信息
  • 若使用非默认路径(如 www),后续所有路径引用都要同步更新,不能只改 UserDir

开放 home 目录下 public_html 的访问权限

仅配置路径还不够,Apache 默认禁止访问用户家目录——必须显式授权:

  • 在同个配置文件中添加或修改 <directory></directory>
  • 关键指令必须包含:Require all granted(Apache 2.4+ 语法,替代旧版 Allow from all
  • 推荐搭配:Options Indexes FollowSymLinks(允许目录列表和符号链接)、AllowOverride None(禁用 .htaccess 提升安全性)
  • 注意路径通配符匹配:如果改用 UserDir www,此处必须写成 /home/*/www,否则 403 错误必现

SELinux 与文件权限的常见拦路虎

即使配置全对,仍可能返回 403 Forbidden。常见原因有两个:

  • SELinux 上下文限制:默认情况下,/home/* 下的目录不被标记为 Web 可读。执行:
    sudo semanage fcontext -a -t httpd_sys_content_t "/home(/[^/]*)?/public_html(/.*)?"
    sudo restorecon -Rv /home/*/public_html
  • 用户目录权限过严:Apache 进程需能遍历到 public_html。确保用户家目录至少有 711(即 drwx--x--x),public_html 至少为 755,内部文件如 index.html 至少为 644

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

apache

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

840

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2412

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

816

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

709

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

374

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2176

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

3992

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

647

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Apache Maven 官方安装指南
Apache Maven 官方安装指南

共0课时 | 0人学习

Apache Maven 官方用户中心
Apache Maven 官方用户中心

共0课时 | 0人学习

Apache Subversion 官方手册
Apache Subversion 官方手册

共0课时 | 0人学习