怎样在CentOS 0中配置虚拟主机来托管多个网站?

#技术教程 发布时间: 2025-01-23

本文将介绍如何在CentOS 7上配置Apache HTTP服务器,以便为不同的域名或子域名提供内容。通过使用虚拟主机(Virtual Hosts),我们可以轻松地在同一台服务器上托管多个独立的网站。

安装Apache Web Server

首先需要确保您的系统已经安装了最新版本的Apache Web Server。如果尚未安装,则可以通过yum命令行工具来安装它:

yum install httpd

安装完成后启动httpd服务并设置开机自启:

systemctl start httpd
systemctl enable httpd

创建文档根目录和测试页面

为每个要托管的站点创建一个单独的文档根目录。例如,如果您打算托管两个站点example1.com和example2.com,那么可以这样做:

mkdir -p /var/www/html/example1.com/public_html
mkdir -p /var/www/html/example2.com/public_html

接下来,在每个公共HTML文件夹内添加一个简单的index.html文件作为测试页面:

echo “<html><head><title>Example Site 1</title></head><body><h1>Welcome to Example Site 1!</h1></body></html>" > /var/www/html/example1.com/public_html/index.html
echo “<html><head><title>Example Site 2</title></head><body><h1>Welcome to Example Site 2!</h1></body></html>" > /var/www/html/example2.com/public_html/index.html

配置SELinux权限

由于SELinux默认情况下会阻止Apache访问非标准位置的文件,因此您需要更改这些新创建的目录的安全上下文,以便让Web服务器能够读取它们:

chcon -R -t httpd_sys_content_t /var/www/html/example1.com/public_html
chcon -R -t httpd_sys_content_t /var/www/html/example2.com/public_html

还需要修改目录的所有权,使apache用户成为所有者:

chown -R apache:apache /var/www/html/example1.com/public_html
chown -R apache:apache /var/www/html/example2.com/public_html

配置防火墙规则

为了让外部网络能够访问我们的网站,必须打开必要的端口。对于HTTP流量,默认情况下只需要允许80端口即可:

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

编辑Apache配置文件

现在我们已经有了所有的预备工作,接下来就是编辑主配置文件以包含新的虚拟主机定义。通常情况下,这个文件位于/etc/httpd/conf/httpd.conf中。但是为了保持整洁,建议将每个站点的具体配置放在单独的配置文件里,然后通过Include指令引入它们。

创建一个新的配置文件用于第一个示例站点:

nano /etc/httpd/conf.d/example1.conf

在这个文件里面输入如下内容:

<VirtualHost :80>
ServerAdmin webmaster@example1.com
DocumentRoot "/var/www/html/example1.com/public_html"
ServerName example1.com
ServerAlias www.example1.com
ErrorLog "/var/log/httpd/example1-error_log"
CustomLog "/var/log/httpd/example1-access_log" combined
</VirtualHost>

重复上述步骤为第二个站点创建相应的配置文件。

重启Apache服务

最后一步是重启Apache服务,使所有更改生效:

systemctl restart httpd

当有人尝试通过浏览器访问example1.com或者example2.com时,他们应该会看到各自对应的欢迎页面。

以上就是在CentOS 7中配置Apache虚拟主机以支持多站点的基本方法。实际生产环境中可能还会涉及到更多高级功能如SSL证书配置、重定向规则等,但掌握了基础之后再去学习那些也不迟。


# 多个  # 虚拟主机  # 配置文件  # 第二个  # 我们可以  # 还会  # 第一个  # 在这个  # 放在  # 如果您  # 您的  # 创建一个  # 重启  # 情况下  # 再去  # 建站  # 只需要  # 还需要  # 这样做  # 涉及到 



上一篇 : 阿里云建站服务代理对于多语言网站建设有何解决方案?

下一篇 : 阿里云建站服务代理在数据备份与恢复方面有哪些措施?

推荐阅读

电话:400 76543 55
邮箱:915688610@qq.com
品牌营销
客服微信
搜索营销
公众号
©  丽景创新 版权所有 赣ICP备2024032158号 九江网站优化 江西网站推广 江西网站推广 AI网站SEO优化 九江网站优化 江西网站推广 江西网站推广 AI网站SEO优化
品牌营销
专业SEO优化
添加左侧专家微信
获取产品详细报价方案