一、http:超文本传输协议
HTTP协议是一种用于传输超文本的应用层协议,它是Web应用中最为常用的协议之一。
端口号:tcp80
功能:web浏览与下载
程序包:httpd
配置文件/etc/httpd/conf/httpd.conf
使用该协议时应关闭防火墙
二、三种工作模式
1、prefork MPM:默认模式,服务器为每个用户的连接开启一个进程做相应,对系统资源
占有量比较大,该模式适合于并发连接数较小,页面程序较多的网点
2、worker MPM: 由Apache主进程开启多个子进程,每个进程内开多个线程,每个线程相应
客户连接,该模式适合于并发连接数多,点击量较大的站点
3、event MPM: 由Apache主进程响应客户的连接,当客户方登录时,在针对每个账号开启
一个进程,进程内多线程来完成
三、查看apache当前工作模式
# httpd -V | grep "Server MPM"
修改apache的工作模式
# vim /etc/httpd/conf.modules.d/00-mpm.conf
6: prefork
12:worker
18:event
修改:将以上三行中的两行加注释即可。此时表示设置为除这两行外的模式
四、简单配置
server # yum install httpd -y
# echo "hello" > /var/www/html/index.html
# systemctl restart httpd
client # yum install elinks -y
# elinks http://server_ip/FQDN
五、使Apache支持各种脚本
Apache是一个常见的开源Web服务器软件,它支持通过HTTP协议来传输和处理各种类型的脚本。
Apache可以通过模块化的方式来支持各种类型的脚本语言,例如:
- PHP:Apache可以通过mod_php模块来支持PHP脚本的执行。
- Python:Apache可以通过mod_python模块或者WSGI模块来支持Python脚本的执行。
- Perl:Apache可以通过mod_perl模块来支持Perl脚本的执行。
- Ruby:Apache可以通过mod_ruby模块来支持Ruby脚本的执行。
除了上述的脚本语言外,Apache还支持其他各种类型的脚本语言,包括Shell脚本、JavaScript脚本等。
通过在Apache的配置文件中配置相应的模块,可以将HTTP请求与相应的脚本关联起来,使得Apache能够根据请求的URL路径来执行相应的脚本,并将执行结果返回给客户端。
总结来说,Apache通过支持各种脚本语言的模块,使得它可以执行和处理通过HTTP协议传输的各种类型的脚本。
六、虚拟主机
不同ip 保证本地网卡有多块
不同FQDN 针对同一ip地址而言
不同port 修改配置文件,增加监听端口
1)不同ip不同port: 相比不同ip的虚拟主机而言,只需要指定不同的port
2)不同FQDN不同port:相比不同FQDN的虚拟主机而言,只需要指定不同的port
------------------------------------------------------------------------------
vim /etc/httpd/conf.d目录下编辑
<Directory /srv/www/www> 容器里指定虚拟主机的主页文件存放目录
Require all granted 允许所有主机访问
AllowOverride None 遵循主配置文件的配置
</Directory>
<VirtualHost www.baidu.com:80>容器里指定虚拟主机的FQDN以及建立客户端访问的port
DocumentRoot /srv/www/www 主页文件的存放目录
ServerName www.baidu.com 指定虚拟主机的FQDN
ServerAdmin webmaster@baidu.com 指定管理员
ErrorLog "logs/www_error_log" 指定错误日志的存放文件
CustomLog "logs/www_access_log" common 指定访问日志的存放文件
</VirtualHost>
欢迎关注交流: