注:RedHat8中dnf为yum的新版本;并且8中在yum源中增加大量的资源包。分为APPstream,BaseOS
[root@localhost 100]# vim /etc/yum.repos.d/base.repo
[base]
name=base
baseurl=file:///mnt/BaseOS
enable=1
gpgcheck=0
[Appstream]
name=appstream
baseurl=file:///mnt/AppStream
enable=1
gpgcheck=0
[root@localhost 100]# systemctl start httpd
[root@localhost 100]# systemctl status httpd -l
主配置文件内容***[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
31 ServerRoot "/etc/httpd" http服务的顶级目录为/etc/httpd
42 Listen 80监听在80端口,80为web服务器的默认端口
56 Include conf.modules.d/*.conf 包括/etc/httpd/conf.modules.d/*.conf的所有文件
66 User apache服务的用户(ps -ef | grep httpd,先以root用户把/usr/sbin/httpd服务启动起来)。启动服务后转换的身份,在启动服务时通常以root身份,然后转换身份,这样增加系统安全
67 Group apache
86 ServerAdmin root@localhost你的邮箱,有事的时候给你发邮件
95 #ServerName [www.example.com:80](www.example.com:80) ServerName 0.0.0.0:80匹配任意IP地址,监听端口在80端口
默认是不需要指定的,服务器通过名字解析过程来获得自己的名字,但如果解析有问题(如反向解析不正确),或者没有DNS名字,也可以在这里指定ip地址,当这项不正确的时候服务器不能正常启动。解决办法就是启动该项把www.example.com:80修改为自己的域名或者直接修改为localhost
102 目录为根,<>为起始标志,>为结束标志
103 AllowOverride none 不允许这个目录下的访问控制文件来改变这里的配置,这也意味着不用查看这个目录下的访问控制文件。
104 Require all denied 拒绝访问根
105 和 是一组标签,目录控制容器
119 DocumentRoot "/var/www/html"网页文件存放的目录
124
125 AllowOverride None
126 # Allow open access:
127 Require all granted
128
131
144 Options Indexes FollowSymLinks 索引,跟踪软链接
151 AllowOverride None
156 Require all granted
157
163 加载一个目录模块
164 DirectoryIndex index.html
165
171 不能访问
172 Require all denied
173
182 ErrorLog "logs/error_log"
189 LogLevel warn
191 日志配置模块 /var/log/httpd,日志模块:通过时间节点去记录(man date)
196 LogFormat "%h %l %u %t \"%r\" %>s %b \"%{ Referer}i\" \"%{User-Agent}i\"" combined
197 LogFormat "%h %l %u %t \"%r\" %>s %b" com mon
198
199
201 LogFormat "%h %l %u %t \"%r\" %>s %b \" %{Referer}i\" \"%{User-Agent}i\" %I %O" combi nedio
202
217 CustomLog "logs/access_log" combined
218
220 别名模块
247 ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
248
249
cgi(通用网关接口)是web服务器运行时外部程序的规范,按cgi编写的程序可以扩展服务器的功能。cgi应用程序能与浏览器进行交互,还可通过数据库API与数据库服务器等外部数据源进行通信,从数据库服务器中获取数据
255
256 AllowOverride None
257 Options None
258 Require all granted
259
261 多用途互联网邮件扩展模块
266 TypesConfig /etc/mime.types
283 AddType application/x-compress .Z
284 AddType application/x-gzip .gz .tgz
305 AddType text/html .shtml
306 AddOutputFilter INCLUDES .shtml
307
mime多用途互联网邮件扩展类型,是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问时,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。
316 AddDefaultCharset UTF-8 默认字符集
318
324 MIMEMagicFile conf/magic
325
348 EnableSendfile on
353 IncludeOptional conf.d/*.conf
[root@localhost 100]# echo Hello world! > /var/www/html/index.html
[root@localhost 100]# echo 你好! >> /var/www/html/index.html
[root@localhost 100]# curl 192.168.10.136
1、该网站ip地址的主机位为100,设置DocumentRoot为/www/ip/100,网页内容为:this is 100。
2、该网站ip地址主机位为200,设置DocumentRoot为/www/ip/200,网页内容为:this is 200。
查看添加的IP地址
#查看命令
ip a
ifconfig
定义基于不同ip地址来访问网站的配置文件
示例文件[root@localhost ~]# vim /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf
root@localhost 100]# vim /etc/httpd/conf.d/vhost.conf
AllowOverride none
Require all granted
ServerAdmin root@Localhost
DocumentRoot /www/100
ServerName 192.168.10.100
ServerAdmin root@Localhost
DocumentRoot /www/200
ServerName 192.168.10.200
创建文件目录并定义网页内容
[root@localhost /]# mkdir /www/{100,200} -pv
mkdir: created directory '/www'
mkdir: created directory '/www/100'
mkdir: created directory '/www/200'
[root@localhost /]# man mkdir
[root@localhost 100]# echo This is 100 > /www/100/index.html
[root@localhost 100]# echo This is 200 > /www/200/index.html
关闭防火墙,重启http服务
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost 100]# systemctl restart httpd.service
进行测试:
[root@localhost 100]# curl 192.168.10.100
This is 100
[root@localhost 100]# curl 192.168.10.200
This is 200
1、建立一个使用web服务器默认端口的网站,设置DocumentRoot为/www/port/80,网页内容为:the port is 80。
2、建立一个使用10000端口的网站,设置DocumentRoot为/www/port/10000,网页内容为:the port is 10000。
1、新建一个网站,域名为www.ceshi.com,设置DocumentRoot为/www/name,网页内容为this is test。
2、新建一个网站,域名为rhce.first.day,同时可通过ce.first.day访问,设置DocumentRoot为/www/ce,网页内容为:today is first day of class。
配置本地DNS缓存
windows:
windows下的hosts文件路径:C:\Windows\System32\drivers\etc\hosts
测试:
请求报文:
(1)请求行:包含请求方法,URI,HTTP版本协议
(2)请求首部字段
(3)请求内容实体
响应报文:
(1)状态行:包含HTTP版本,状态码,状态码原因短语
(2)响应首部字段
方法 | 描述 | 是否包含主体 |
---|---|---|
GET | 从服务端获取指定信息 | 否 |
POST | 向服务端发送待处理的数据 | 是 |
HEAD | 从服务端获取指定信息的头部 | 否 |
PUT | 向服务端发送数据并替换服务端上指定的数据 | 是 |
OPTIONS | 查询针对请求URL指定的资源支持 | 否 |
DELETE | 从服务端删除指定数据 | 否 |
TRACE | 沿着目标资源的路径执行消息环回测试 | 否 |
源。