温馨提示×

centos怎么修改apache根目录

小樊
43
2026-10-20 12:12:36
栏目: 智能运维

在 CentOS 上修改 Apache(httpd)的网站根目录,通常按下面几个步骤来操作(以 CentOS 7/8 + Apache/httpd 为例):


一、确定 Apache 配置文件位置

CentOS 中 Apache 一般叫 httpd,配置文件通常在:

/etc/httpd/conf/httpd.conf

虚拟主机可能在:

/etc/httpd/conf.d/*.conf

二、修改根目录(DocumentRoot)

1. 备份配置文件(重要)

cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

2. 编辑配置文件

vi /etc/httpd/conf/httpd.conf

找到类似以下内容:

DocumentRoot "/var/www/html"
<Directory "/var/www/html">
    AllowOverride None
    Require all granted
</Directory>

假设你想改成 /data/www:

DocumentRoot "/data/www"
<Directory "/data/www">
    AllowOverride All
    Require all granted
</Directory>

注意:<Directory> 里的路径必须和 DocumentRoot 一致


三、创建新目录并放测试文件

mkdir -p /data/www
echo "hello apache" > /data/www/index.html

四、修改目录权限(很重要)

1. 修改目录所有者(可选)

chown -R apache:apache /data/www

2. 修改权限

chmod -R 755 /data/www

五、SELinux 设置(CentOS 常见坑)

如果启用了 SELinux,必须设置 httpd 可访问目录:

查看 SELinux 状态

getenforce

如果是 Enforcing:

semanage fcontext -a -t httpd_sys_content_t "/data/www(/.*)?"
restorecon -Rv /data/www

或者临时关闭(不推荐):

setenforce 0

六、防火墙(如需要)

firewall-cmd --permanent --add-service=http
firewall-cmd --reload

七、重启 Apache

systemctl restart httpd

八、验证

浏览器访问:

http://服务器IP

看到 hello apache 即成功。


常见问题

问题 原因
403 Forbidden 目录权限或 SELinux
页面不更新 浏览器缓存
仍显示旧目录 虚拟主机覆盖

如果你用的是 CentOS Stream / Apache 2.4 / 虚拟主机,可以告诉我,我可以给你具体配置示例。

0 踩