这篇文章主要介绍“怎么用Apache Web服务器配置多个站点”,在日常操作中,相信很多人在怎么用Apache Web服务器配置多个站点问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Apache Web服务器配置多个站点”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
成都创新互联公司:公司2013年成立为各行业开拓出企业自己的“网站建设”服务,为千余家公司企业提供了专业的网站设计、成都做网站、网页设计和网站推广服务, 按需策划设计由设计师亲自精心设计,设计的效果完全按照客户的要求,并适当的提出合理的建议,拥有的视觉效果,策划师分析客户的同行竞争对手,根据客户的实际情况给出合理的网站构架,制作客户同行业具有领先地位的。
使用基于名称的虚拟主机,你可以为多个站点使用一个 IP 地址。现代 Web 服务器,包括 Apache,使用指定 URL 的 hostname
部分来确定哪个虚拟 Web 主机响应页面请求。这仅仅需要比一个站点更多的配置。
即使你只从单个站点开始,我也建议你将其设置为虚拟主机,这样可以在以后更轻松地添加更多站点。在本文中,我将从上一篇文章中我们停止的地方开始,因此你需要设置原来的站点,即基于名称的虚拟站点。
在设置第二个站点之前,你需要为现有网站提供基于名称的虚拟主机。如果你现在没有站点,请返回并立即创建一个。
一旦你有了站点,将以下内容添加到 /etc/httpd/conf/httpd.conf
配置文件的底部(添加此内容是你需要对 httpd.conf
文件进行的***更改):
DocumentRoot /var/www/html ServerName www.site1.org
这将是***个虚拟主机配置节,它应该保持为***个,以使其成为默认定义。这意味着通过 IP 地址或解析为此 IP 地址但没有特定命名主机配置节的其它名称对服务器的 HTTP 访问将定向到此虚拟主机。所有其它虚拟主机配置节都应跟在此节之后。
你还需要使用 /etc/hosts
中的条目设置你的网站以提供名称解析。上次,我们只使用了 localhost
的 IP 地址。通常,这可以使用你使用的任何名称服务来完成,例如 Google 或 Godaddy。对于你的测试网站,通过在 /etc/hosts
中的 localhost
行添加一个新名称来完成此操作。添加两个网站的条目,方便你以后不需再次编辑此文件。结果如下:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 www.site1.org www.site2.org
让我们将 /var/www/html/index.html
文件改变得更加明显一点。它应该看起来像这样(带有一些额外的文本来识别这是站点 1):
Hello World
Web site 1.
重新启动 HTTPD 服务器,已启用对 httpd
配置的更改。然后,你可以从命令行使用 Lynx 文本模式查看网站。
[root@testvm1 ~]# systemctl restart httpd[root@testvm1 ~]# lynx www.site1.org Hello World Web site 1.Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.Arrow keys: Up and Down to move. Right to follow a link; Left to go back.H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list
你可以看到原始网站的修改内容,没有明显的错误,先按下 Q
键,然后按 Y
退出 Lynx Web 浏览器。
现在你已经准备好建立第二个网站。使用以下命令创建新的网站目录结构:
[root@testvm1 html]# mkdir -p /var/www/html2
注意,第二个站点只是第二个 html
目录,与***个站点位于同一 /var/www
目录下。
现在创建一个新的索引文件 /var/www/html2/index.html
,其中包含以下内容(此索引文件稍有不同,以区别于原来的网站):
Hello World -- Again
Web site 2.
在 httpd.conf
中为第二个站点创建一个新的配置节,并将其放在上一个虚拟主机配置节下面(这两个应该看起来非常相似)。此节告诉 Web 服务器在哪里可以找到第二个站点的 HTML 文件。
DocumentRoot /var/www/html2 ServerName www.site2.org
重启 HTTPD,并使用 Lynx 来查看结果。
[root@testvm1 httpd]# systemctl restart httpd[root@testvm1 httpd]# lynx www.site2.org Hello World -- Again Web site 2.Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.Arrow keys: Up and Down to move. Right to follow a link; Left to go back.H)elp O)ptions P)rint G)o M)ain screen Q)uit /=search [delete]=history list
在这里,我压缩了输出结果以适应这个空间。页面的差异表明这是第二个站点。要同时显示两个站点,请打开另一个终端会话并使用 Lynx Web 浏览器查看另一个站点。
到此,关于“怎么用Apache Web服务器配置多个站点”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!