本文将介绍如何在CentOS 7上配置Apache HTTP服务器,以便为不同的域名或子域名提供内容。通过使用虚拟主机(Virtual Hosts),我们可以轻松地在同一台服务器上托管多个独立的网站。
安装Apache Web Server
首先需要确保您的系统已经安装了最新版本的Apache Web Server。如果尚未安装,则可以通过yum命令行工具来安装它:
yum install httpd
安装完成后启动httpd服务并设置开机自启:
systemctl start httpdsystemctl enable httpd
创建文档根目录和测试页面
为每个要托管的站点创建一个单独的文档根目录。例如,如果您打算托管两个站点example1.com和example2.com,那么可以这样做:
mkdir -p /var/www/html/example1.com/public_htmlmkdir -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.htmlecho “<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_htmlchcon -R -t httpd_sys_content_t /var/www/html/example2.com/public_html
还需要修改目录的所有权,使apache用户成为所有者:
chown -R apache:apache /var/www/html/example1.com/public_htmlchown -R apache:apache /var/www/html/example2.com/public_html
配置防火墙规则
为了让外部网络能够访问我们的网站,必须打开必要的端口。对于HTTP流量,默认情况下只需要允许80端口即可:
firewall-cmd --permanent --add-service=httpfirewall-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证书配置、重定向规则等,但掌握了基础之后再去学习那些也不迟。
文章推荐更多>
- 1mysql如何创建数据表命令
- 2为什么phpmyadmin拒绝访问
- 3c盘空间为0怎么办 恢复c盘可用空间的4个步骤
- 4夸克浏览器怎么找网站 快速找到网站的实用方法分享
- 5mysql删除后怎么恢复
- 6phpmyadmin怎么新建数据表
- 7mysql如何找回删除的数据
- 8wordpress基于什么语言
- 9电脑ip地址在哪里看 快速查询电脑ip地址方法
- 10电脑一直卡在白屏状态怎么办 白屏卡死解决方法轻松恢复系统
- 11wordpress如何压缩图片
- 12ao3官方网站链接最新 ao3官方网站最新链接
- 13UC缓存视频导出到新手机
- 14oracle数据库闪回功能怎么使用
- 15wordpress安装插件时需要给什么权限
- 16yandex网页登录两个入口 yandex两个网页登录版
- 17如何把谷歌浏览器设置为默认浏览器 默认浏览器切换教程
- 18电脑摄像头改移动侦测监控设备
- 19oracle端口号怎么看
- 20如何查看oracle数据库状态
- 21夸克怎么关闭连续包月续费 连续包月关闭指南
- 22oracle怎么设置定时任务
- 23oracle数据库sid怎么看
- 24电脑截屏的图片保存在哪里 截图默认存储路径查询
- 25怎么把手机uc浏览器缓存的视频导出
- 26phpmyadmin日志在哪里
- 27夸克怎么免费解压 免费解压文件的详细教程分享
- 28无文件攻击防御:内存马检测与行为分析
- 29老旧电脑定时关机:低配置设备的资源占用优化方案
- 30oracle定时任务半小时执行一次怎么设置
