Apache的基础管理及web优化详解
Posted 是大姚呀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache的基础管理及web优化详解相关的知识,希望对你有一定的参考价值。
Apache的基础管理及web优化
1、Apache的作用
我们在访问web服务器时通常使用的是http://方式,即超文本传输协议,提供这一协议服务的软件主要有Apache、nginx、stgw、jfe、Tengine等,比如百度web服务器使用的是Apache,淘宝web服务器使用的是Tengine。Linux发行的各个版本的系统绝大多数都使用的是Apache (Apache HTTP服务器),因此在这里我们主要对Apache的管理及web优化进行说明。
2、Apache的安装
实验环境:
真实主机westos ip:172.25.254.33
虚拟主机westosa ip:172.25.254.133
实验步骤:
1)编写虚拟主机westosa的网卡配置文件,设定其ip为172.25.254.133,重启网络,开启连接,此时虚拟主机和真实主机可以通信
2)配置虚拟主机westosa的软件源仓库指向文件,这里使用的是真实主机上建立的软件仓库
3)dnf install httpd.x86_64 -y
从软件仓库中找到Apache软件包并安装Apache
3、Apache的启用
实验步骤:
1)开启 http 服务并设定服务开机时自动启动,在系统防火墙中永久开启http访问,刷新防火墙使设定生效
2)完成上述操作后,在真实主机(安装有firefox浏览器)中访问虚拟主机westosa 172.25.254.133,可以看到Apache软件的测试页,Apache成功启用
4、Apache的基本信息
所提供服务名称 | httpd |
---|---|
主配置文件 | /etc/httpd/conf/httpd.conf |
子配置文件 | /etc/httpd/conf.d/*.conf |
默认发布目录 | /var/www/html |
默认发布文件 | index.html |
默认端口 | http:80 / https:443 |
系统中对应用户 | apache |
日志存放路径 | /etc/httpd/logs |
5、Apache的基本配置
在对Apache的基本配置进行相关操作前,为了不影响操作效果,我们需要编辑系统内核加强级防火墙的配置文件,关闭该防火墙
注意: 设置关闭内核加强级防火墙后必须reboot
重启系统,设定才生效
a)httpd默认端口修改
实验步骤:
1)在httpd服务默认共享位置处编写默认发布文件,在真实主机firefox浏览器中访问虚拟主机westosa 172.25.254.133,可以看到默认发布文件中的内容
2)httpd默认使用的是80端口,修改主配置文件 /etc/httpd/conf/httpd.conf,将默认端口改为8080,重启httpd服务,在系统防火墙中永久开启8080访问,刷新防火墙使设定生效
3)此时在真实主机firefox浏览器中,通过8080端口访问虚拟主机westosa 172.25.254.133,可以看到默认发布文件中的内容
b)httpd默认发布文件修改
实验步骤:
1)httpd默认发布的是index.html文件,在共享位置处编写一个westos.html文件,修改主配置文件 /etc/httpd/conf/httpd.conf,设置westos.html为优先发布文件,重启httpd服务
2)此时在真实主机firefox浏览器中访问虚拟主机westosa 172.25.254.133,默认发布的是文件westos.html中的内容
c)httpd默认发布目录修改
实验步骤:
1)httpd默认发布目录,即默认共享位置是/var/www/html,我们在根下建立另一个/westos/html目录,在该目录下编写默认发布文件index.html,修改主配置文件 /etc/httpd/conf/httpd.conf,设置/westos/html为默认发布目录,重启httpd服务
2)此时在真实主机firefox浏览器中访问westosa 172.25.254.133/index.html,页面发布的是/westos/html目录下index.html中的内容,而不是/var/www/html目录下的index.html,修改成功
6、Apache的访问控制
a)基于客户端ip的访问控制
> ip黑名单
实验步骤:
1)在httpd的共享位置/var/www/html目录下,建立westos目录,在该目录下编写默认发布文件index.html,修改主配置文件 /etc/httpd/conf/httpd.conf,设置westos目录访问黑名单,拒绝172.25.254.33访问该目录,重启httpd服务
2)此时在真实主机172.25.254.33firefox浏览器中访问172.25.254.133/westos/index.html,页面提示无权限访问
> ip白名单
实验步骤:
1)修改主配置文件 /etc/httpd/conf/httpd.conf,设置westos目录访问白名单,只允许172.25.254.33访问该目录,重启httpd服务
2)此时在真实主机172.25.254.33firefox浏览器中访问172.25.254.133/westos/index.html,可以看到westos目录下index.html中的内容
注意: 设置黑名单时配置文件中Order顺序为 Allow,Deny;设置白名单时配置文件中Order顺序为 Deny,Allow,后者的语句设定会覆盖前者的语句设定,以此实现黑白名单功能
b)基于用户认证
实验步骤:
1)在/etc/httpd目录下,生成用户认证文件apacheauth,这里用户认证文件中包含admin、lee两个用户的认证信息
注意: 当/etc/httpd/apacheauth存在,在添加用户时不要加-c参数,否则会覆盖原文件内容
2)编辑主配置文件 /etc/httpd/conf/httpd.conf,指定访问westos目录的用户认证文件,设置认证提示语和认证类型, Require user admin
设置允许通过的认证用户只有admin,重启httpd服务
3)此时在真实主机的firefox浏览器中访问172.25.254.133/westos/index.html,弹出用户认证页面
4)输入用户lee的用户名和密码,页面提示无法通过认证
5)输入用户admin的用户名和密码,通过认证,可以看到westos目录下index.html中的内容, Require user admin
生效
6)修改主配置文件 /etc/httpd/conf/httpd.conf, Require valid-user
设置允许用户认证文件中所有用户通过认证,重启httpd服务
7)清理之前的用户认证历史,输入用户 lee 的用户名和密码,此时认证通过,可以看到westos目录下index.html中的内容, Require valid-user
生效
7、Apache的虚拟主机
我们在www.baidu.com的主页面中可以点击进入不同的网站,其本质是在访问百度的web服务器时通过不同的域名进入了不同的网站,这一功能可以通过 Apache虚拟主机来实现。Apache虚拟主机的作用就是让一个apache为多个域名服务,相当于一个服务器上挂了多个网站。具体操作如下:
实验步骤:
1)在httpd的共享位置/var/www目录下,建立westos.org/{linux,java}目录,在两个目录下分别编写其发布文件index.html
2)编写虚拟主机配置文件/etc/httpd/vhost.conf如下,重启httpd服务
3)在浏览器所在的真实主机中编辑/etc/hosts,设置与虚拟主机配置文件中相对应的域名解析
4)在浏览器所在真实主机中通过80端口访问www.westos.org时,默认发布/var/www/html目录下的index.html文件
访问linux.westos.org时,发布的是/var/www/westos.org/linux目录下的index.html文件
访问java.westos.org时,发布的是/var/www/westos.org/java目录下的index.html文件
以上是关于Apache的基础管理及web优化详解的主要内容,如果未能解决你的问题,请参考以下文章