Linux中apache服务基础部分详解

#########apache服务基础部分########
apache服务简介:
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。Apache HTTP服务器是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的Web服务器软件。
本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。世界上很多著名的网站如Amazon、Yahoo!、W3 Consortium、Financial Times等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面

Apacheweb服务器软件拥有以下特性:
1.支持最新的HTTP/1.1通信协议
2.拥有简单而强有力的基于文件的配置过程
3.支持通用网关接口
4.支持基于IP和基于域名的虚拟主机
5.支持多种方式的HTTP认证
6.集成Perl处理模块
7.集成代理服务器模块
8.支持实时监视服务器状态和定制服务器日志
9.支持服务器端包含指令(SSI)
10.支持安全Socket层(SSL)
11.提供用户会话过程的跟踪
12.支持FastCGI
13.通过第三方模块可以支持JavaServlets

<http超文本传输协议;默认访问接口80;默认共享目录/var/www/html>
###实验环境设置(desktop主机)
1.搭建与系统版本相符的yum源
在这里插入图片描述
2.yum install httpd httpd-manual -y ##安装http相关软件包
systemctl start httpd ##开启服务
systemctl enable httpd ##使服务能使用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.改主机名称:hostnamectl set-hostname apache-server.westos.com
在这里插入图片描述
4. firewall-cmd --permanent --add-service=http ##使火墙永久允许http服务
firewall-cmd --permanent --add-service=https ##是火墙永久允许https服务
firewall-cmd --reload ##重启火墙
在这里插入图片描述
在这里插入图片描述
###修改端口###
<默认端口是80>
1. vim /etc/httpd/conf/httpd.conf ##编辑配置文件
将第42行Listen后的端口号改为8080
systemctl restart httpd重启服务
在这里插入图片描述
在这里插入图片描述
2. firewall-cmd --permanent --add-port=8080/tcp ##给火墙添加8080端口
firewall-cmd --reload ##重启火墙
在这里插入图片描述
3.semanage port -l | grep httpd ##查看端口信息
在这里插入图片描述
4.测试:8080端口可以访问
在这里插入图片描述
5.vim /etc/httpd/conf/httpd.conf ##编辑配置文件
将端口号改为6666
systemctl restart httpd重启服务
在这里插入图片描述
6.semanage port -a -t http_port_t -p tcp 6666 ##添加6666为允许的端口(之前的8080接口是默
认允许的,所以不用添加)
在这里插入图片描述
7.firewall-cmd --permanent --add-port=6666/tcp ##给火墙添加6666端口
firewall-cmd --reload ##重启火墙
在这里插入图片描述
8.测试:6666端口现在可以访问了
在这里插入图片描述
###修改默认发布文件###
1. cd /var/www/html ##进到默认共享目录
vim westos.html ##编辑文件,写入内容如图
在这里插入图片描述
在这里插入图片描述
2.vim /etc/httpd/conf/httpd.conf ##编辑配置文件
将第164行改为 DirectoryIndex westos.html index.html
意思是当你访问时,它的发布文件会是westos.html,只有当这个文件不存在时,才会变成
index.html文件
修改完后systemctl restart httpd服务
在这里插入图片描述
在这里插入图片描述
3. 测试:当用火狐访问时,显示的内容会是westos.html文件里的内容,这就说明默认发布文件
修改成功
在这里插入图片描述
###修改默认目录###
1. mkdir /westos/web/html/ -p ##建立递归目录
vim index.html ##编写文件,内容如下
在这里插入图片描述
在这里插入图片描述
2. vim /etc/httpd/conf/httpd.conf ##编辑配置文件
注释掉默认发布目录
120行 DocumentRoot “/westos/web/html”
121行 <Directory “/westos/web/html”>
122行 Require all granted
123行
在这里插入图片描述
3.semanage fcontext -a -t httpd_sys_content_t '/westos(/.)?’ ##修改安全上下文
restorecon -RvvF /westos ##刷新成正确的安全上下文
在这里插入图片描述
4. systemctl restart httpd重启服务后测试,显示的内容是我们刚建立的目录下文件里的内容
在这里插入图片描述
###apache虚拟机的设置###
1. cd /var/www/ ##cd到该目录下
mkdir westos.com/news/html -p
mkdir westos.com/music/html -p
递归创建两个该目录
在这里插入图片描述
2. vim /var/www/westos.com/news/html/index.html ##编辑文件,内容如下
在这里插入图片描述
vim /var/www/westos.com/music/html/index.html ##编辑文件,内容如下
在这里插入图片描述
3.cd /etc/httpd/conf.d ##进到该目录下
vim a_default.conf ##编辑文件,内容如下
编辑完后重启httpd服务
在这里插入图片描述
<default:80意思是默认端口为80;DocumentRoot为默认发布目录;combined混合型日志>
4. 继续在该目录下vim news.conf ##编写文件
编辑完后重启httpd服务
在这里插入图片描述
<
:80意思就是下面的servername的访问端口是80;DocumentRoot是apache虚拟主机的发布目录;后三行的意思是给上面内容提供支持>
5. cp news.conf music.conf ##拷贝模板
vim music.conf ##编写文件
编写完后重启httpd服务
在这里插入图片描述
6.在真机里面添加本地解析
vim /etc/hosts 编辑文件,添加www.westos.com,news.westos.com,music.westos.com域名
在这里插入图片描述
在这里插入图片描述
7.测试:火狐浏览器分别输入上面添加的三个域名,会显示相应的内容
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
###权限控制访问###
1.基于ip地址访问控制
(1). cd /etc/httpd/conf.d/ ##进到该目录下
vim a_default.conf ##编辑默认的发布文件,在之前写入的内容下面添加以下内容如图
在这里插入图片描述
<添加的内容意思是只允许45主机访问,系统会先读Deny from,后读Allow from>
(2).在45主机上的火狐测试,是可以访问的
在这里插入图片描述
(3).vim a_default.conf ##继续编辑默认的发布文件,将allow和deny换个顺序
在这里插入图片描述
<这表示的是所有人都可以访问除过45主机>
(4).测试,45主机不能访问
在这里插入图片描述
2.基于用户的访问控制
(1).htpasswd -cm http_userlist sdmin ##添加用户sdmin和访问密码
htpasswd -m http_userlist sdmin1 ##再次添加sdmin1用户使只需-m,不要-c,如果在-c会
覆盖之前的用户
在这里插入图片描述
在这里插入图片描述
(2).vim a_default.conf ##编辑文件,注释掉基于ip访问时添加的内容
编辑完后重启httpd服务
在这里插入图片描述
<AuthUserFile :授权用户访问文件;AuthName:当你访问时会显示的内容;AuthType basic:最基础的访问类型;Require user sdmin:只允许sdmin用户访问;Require valid-user:允许所有用户访问>
(3)测试,当访问时会看到输入用户和密码页面,sdmin用户可以访问
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值