温馨提示×

centos apache如何设目录

小樊
39
2026-09-27 03:13:53
栏目: 智能运维

在 CentOS 上通过 Apache(httpd) 设置网站目录,通常包括以下几个步骤。下面以 CentOS 7/8 为例说明。


一、安装 Apache(如未安装)

# CentOS 7
yum install httpd -y

# CentOS 8
dnf install httpd -y

启动并设置开机自启:

systemctl start httpd
systemctl enable httpd

二、Apache 默认目录说明

  • 网站根目录:/var/www/html
  • 主配置文件:/etc/httpd/conf/httpd.conf
  • 虚拟主机配置目录:/etc/httpd/conf.d/

三、修改网站根目录(全局)

1. 创建新目录

mkdir -p /data/www
chown -R apache:apache /data/www
chmod -R 755 /data/www

2. 修改 httpd.conf

vi /etc/httpd/conf/httpd.conf

找到:

DocumentRoot "/var/www/html"
<Directory "/var/www/html">

修改为:

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

3. 重启 Apache

systemctl restart httpd

四、使用虚拟主机(推荐方式)

1. 创建网站目录

mkdir -p /data/www/example.com
chown -R apache:apache /data/www/example.com

2. 创建虚拟主机配置

vi /etc/httpd/conf.d/example.conf

内容示例:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /data/www/example.com

    <Directory /data/www/example.com>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog /var/log/httpd/example-error.log
    CustomLog /var/log/httpd/example-access.log combined
</VirtualHost>

3. 重启 Apache

systemctl restart httpd

五、SELinux 设置(非常重要)

如果开启 SELinux,需要设置目录上下文:

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

如涉及上传写入:

setsebool -P httpd_unified 1

六、防火墙放行

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

七、测试

在目录中创建测试文件:

echo "test" > /data/www/index.html

浏览器访问服务器 IP 或域名。


如果你是想:

  • 配置 子目录
  • 配置 多个站点
  • 配置 WordPress 目录权限
  • 或 CentOS + Apache + PHP

可以告诉我具体需求,我可以给你更精确的配置。

0 踩