欢迎大家来到IT世界,在知识的湖畔探索吧!
这篇文章中,将向你展示如何使用阿帕奇服务器 实例来服务多个站点。基于环境是 Fedora 27 虚拟机,配置了阿帕奇2.4.29。如果你用另一个发行版或不同的 Fedora 版本,那么你使用的命令以及内容和文件配置的位置可能会有所差异。
阿帕奇服务器的所有配置文件都位于 /etc/httpd/conf 和 /etc/httpd/conf.d。默认站点的数据位于 /var/www 中。对于多个站点,就需要提供多个位置,每个位置对应主机的站点。
基于虚拟主机名称
使用基于虚拟主机名称,你可以为多个站点使用一个 IP 地址。现代 Web 服务器,包括阿帕奇服务器,使用指定 URL 的 hostname 部分来确定哪个虚拟 Web 主机响应页面请求。这仅仅需要比一个站点更多的配置。
即使只从单个站点开始,那也建议你将其设置为虚拟主机,这样以后就能更轻松地添加更多站点。
准备原来的网站站点
设置第二个站点之前,我们需要为现有网站提供基于名称的虚拟主机。如果现在没有站点, 那么需要返回并立即创建一个 。
如果有了站点,将以下内容添加到
/etc/httpd/conf/httpd.conf 配置文件的底部(添加此段内容是我们需要对 httpd.conf 文件进行的唯一更改):
DocumentRoot /var/www/html
ServerName www.site1.org
这将是第一个虚拟主机配置节,它应该保持为第一个,以使其成为默认定义。这意味着通过 IP 地址或解析为此 IP 地址但没有特定命名主机配置节的其它名称对服务器的 HTTP 访问将定向到此虚拟主机。所有其它虚拟主机配置节都应跟在此节之后。
你还需要使用 /etc/hosts 中的条目设置你的网站以提供名称解析。通常,这可以使用你使用的任何名称服务来完成。通过在 /etc/hosts 中的 localhost 行添加一个新名称来完成此操作。添加两个网站的条目,方便你以后不需再次编辑此文件。结果如下:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 www.site1.org www.site2.org
让我们将 /var/www/html/index.html 文件改变得更加明显一点。
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 浏览器查看另一个站点。
其他考虑
这个简单的例子展示了如何使用 阿帕奇 HTTPD 服务器的单个实例来服务于两个站点。当考虑其他因素时,配置虚拟主机会变得有点复杂。
例如,你可能希望为这些网站中的一个或全部使用一些 CGI 脚本。为此,你可能为 CGI 程序在 /var/www 目录下创建一些目录:/var/www/cgi-bin 和 /var/www/cgi-bin2,以与 HTML 目录命名一致。然后,你需要将配置指令添加到虚拟主机节,以指定 CGI 脚本的目录位置。每个站点可以有下载文件的目录。这还需要相应虚拟主机节中的条目。
阿帕奇服务器网站描述了管理多个站点的其他方法,以及从性能调优到安全性的配置选项。
阿帕奇是一个强大的 Web 服务器,可以用来管理从简单到高度复杂的网站。尽管其总体市场份额在缩小,但它仍然是互联网上最常用的 HTTPD 服务器。
以上就是使用阿帕奇服务器配置多个网站站点的方法全部内容。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/34656.html