web服务器之——搭建两个基于域名访问的网站
2023-12-13 12:22:17
目录
要求:
- 新建一个网站,域名为www.ceshi.com,设置DocumentRoot为/www/name,网页内容为this is test。
- 新建一个网站,域名为rhce.first.day,同时可通过ce.first.day访问,设置DocumentRoot为/www/ce,网页内容为:today is first day of class。
拓展:基于域名的网站,需要用到域名解析。 域名------->ip地址
浏览器如何通过域名去查询URL对应的IP(对应服务器地址):
1、浏览器缓存:浏览器会按照一定的频率缓存DNS记录。
2、操作系统缓存:如果浏览器缓存中找不到需要的DNS记录,那就去操作系统中的hosts文件找。hosts是一个没有扩展名的系统文件,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文
件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
windows下的hosts文件路径:C:\Windows\System32\drivers\etc\hosts
Linux下的hosts文件路径:/etc/hosts
3、路由缓存:路由器也有DNS缓存。
4、ISP的DNS服务器:ISP是互联网服务提供商(Internet Service Provider)的简称,ISP有专门的DNS服务器应对DNS查询请求。
5、根服务器:ISP的DNS服务器还找不到的话,它就会向根服务器发出请求,进行递归查询(DNS服务器先问根域名服务器.com域名服务器的IP地址,然后再问.com域名服务器,依次类推)。
?
?一、准备工作:web服务器搭建
第一步:挂载
[root@localhost node1]# mount /dev/sr0 /mnt/
第二步:编辑配置文件
[root@localhost node1]# vim /etc/yum.repos.d/web.repo
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0
第三步:安装软件包
[root@localhost node1]# dnf install httpd -y
[root@localhost ~]# rpm -ql httpd
[root@localhost httpd]# tree /etc/httpd
/etc/httpd
├── conf
│ ├── httpd.conf
│ └── magic
├── conf.d
│ ├── autoindex.conf
│ ├── README
│ ├── userdir.conf
│ └── welcome.conf
├── conf.modules.d
│ ├── 00-base.conf
│ ├── 00-dav.conf
│ ├── 00-lua.conf
│ ├── 00-mpm.conf
│ ├── 00-proxy.conf
│ ├── 00-systemd.conf
│ └── 01-cgi.conf
├── logs -> ../../var/log/httpd
├── modules -> ../../usr/lib64/httpd/modules
└──
run -> /run/httpd
第四步:启动httpd
[root@localhost node1]# systemctl start httpd.service
注:
1、启动用start,再次启动用restart,
2、.service后缀可加可不加
查看配置文件:
[root@localhost node1]# rpm -ql httpd | grep etc
第五步:设置防火墙状态:
[root@localhost ~]# systemctl status firewalld
[root@localhost ~]#systemctl stop firewalld
#可不用
[root@localhost ~]#systemctl disable firewalld
注意: systemctl start/restart/enable/disable/stop/status/reload 的区别 ?
重启服务:
[root@localhost ~]# systemctl restart httpd
查看状态: ?
?查看是否启动成功:
[root@localhost node1]# systemctl is-active httpd
active
##测试状态代码
[root@localhost node1]# systemctl stop httpd.service
[root@localhost node1]# systemctl is-active httpd
inactive
第六步:测试
- 在客户端:curl http://ip地址, curl -I 可以查看http报文信息
- 通过浏览器访问http://ip地址 ?
二、搭建网站
第一步,定义基于域名访问的网站的配置文件 ?
[root@localhost node1]# vim /etc/httpd/conf.d/httpd-vhosts.conf
<VirtualHost 192.168.17.171:80>
? ? ? ? ServerName www.ceshi.com
? ? ? ? DocumentRoot /www/name
</VirtualHost>
<VirtualHost 192.168.17.171:80>
? ? ? ? ServerName rhce.first.day
? ? ? ? DocumentRoot /www/ce
</VirtualHost>
<VirtualHost 192.168.17.171:80>
? ? ? ? ServerName ce.first.day
? ? ? ? DocumentRoot /www/ce
</VirtualHost>
<Directory /www>
? ? ? ? AllowOverride none
? ? ? ? Require all granted
</Directory>
第二步、创建两个网页文件根目录,并定义网页内容 ?
[root@localhost ~]# mkdir /www/{name,ce}
[root@localhost ~]# echo this is test > /www/name/index.html
[root@localhost ~]# echo today is first day of class > /www/ce/index.html
第三步、重启httpd
[root@localhost ~]# systemctl restart httpd
第四步、添加域名管理信息:
[root@localhost ~]# vim /etc/hosts
第五步、 测试:
- 在客户端:curl http://ip地址, curl -I 可以查看http报文信息
- 通过浏览器访问http://ip地址 ?
[root@localhost ~]# curl [www.ceshi.com](http://www.ceshi.com)
this is test
[root@localhost ~]# curl rhce.first.day
today is first day of class
[root@localhost ~]# curl ce.first.day
today is first day of class
文章来源:https://blog.csdn.net/weixin_51525416/article/details/134941951
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!