在 CentOS 上通过 Apache(httpd) 设置网站目录,通常包括以下几个步骤。下面以 CentOS 7/8 为例说明。
# CentOS 7
yum install httpd -y
# CentOS 8
dnf install httpd -y
启动并设置开机自启:
systemctl start httpd
systemctl enable httpd
/var/www/html/etc/httpd/conf/httpd.conf/etc/httpd/conf.d/mkdir -p /data/www
chown -R apache:apache /data/www
chmod -R 755 /data/www
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>
systemctl restart httpd
mkdir -p /data/www/example.com
chown -R apache:apache /data/www/example.com
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>
systemctl restart httpd
如果开启 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 或域名。
如果你是想:
可以告诉我具体需求,我可以给你更精确的配置。