Apache部署与配置
创始人
2025-01-15 04:02:51
0

概述

        介绍

        Apache  HTTP Server(简称Apache)是Apache的一个开源的网页服务器,它源自NCSAhttpd服务器,并经过多次修改和发展,如今已经成为全球范围内广泛使用的Web服务器软件之一

        特点

        跨平台:可以运行在几乎所有广泛使用的计算机平台上

        高效性能:能够处理大量的并发连接,满足大型网站的需求

        稳定性:服务器稳定性高,运行时间长,可提供持续的服务

        安全性:提供了多种安全功能,如SSL/TLS加密、访问控制等,以保护用户数据的安全

        功能

        支持通用网关接口(CGI)、基于IP和基于域名的虚拟主机、多种方式的HTTP认证

        支持服务器端包含指令(SSI)、安全Socket层(SSL)

        支持SSL技术,支持多个虚拟主机

安装部署

        环境准备

#准备一台Linux虚拟机,IP地址为192.168.221.151 systemctl stop firewalld               #关闭防火墙 setenforce 0                           #关闭selinux

        安装 

#源代码编译安装 yum -y install gcc gcc-* make        #准备编译安装工具 yum -y install apr-util-devel pcre-devel zlib-devel        #准备依赖包 tar -zxvf   httpd-2.4.59.tar.gz   -C   /usr/src            #解压安装包 cd /usr/src/httpd-2.4.59/            #切换到解压后的目录  #配置安装路径 ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi            #配置安装路径 make && make    install    #编译并安装  #使用编译安装,systemctl命令可能会无法使用,运行以下代码 ln -s /usr/local/httpd/bin/* /usr/local/bin/ cat > /lib/systemd/system/httpd.service << 'EOF' [Unit] Description=The Apache HTTP Server After=network.target [Service] Type=forking PIDFile=/usr/local/httpd/logs/httpd.pid ExecStart= /usr/local/bin/apachectl $OPTIONS ExecrReload= /bin/kill -HUP $MAINPID [Install] WantedBy=multi-user.target EOF  #启动服务并设置开机自启动 systemctl start httpd systemctl enable httpd 

        测试

        如果是yum安装的话应该会显示Testing123.....页面

配置

        配置文件

        安装完成后在我们设置的安装目录下即可看到几个目录        

        conf:存放配置文件

        httpd.conf:位于conf目录下,是httpd的主配置文件

        htdocs:存放html网页,前面测试的It works!网页就放在这里

#编辑主配置文件 vi /usr/local//httpd/conf/httpd.conf ServerRoot "/usr/local/httpd"        #定义服务器配置文件的根目录 Listen 80                            #设置监听的端口为80 ServerName 192.168.221.151           #定义服务器的主机名 DocumentRoot "/usr/local/httpd/htdocs"        #定义网站根目录,即HTTP请求访问的默认目录 DirectoryIndex index.html            #定义访问网站根目录时默认索引文件      #对特定的目录进行设置     AllowOverride None                    #设置特殊属性,none表示不设置,all表示允许     Require all granted                   #允许所有人访问,denied表示拒绝 

        示例

#在htdocs目录下创建test目录并编写一个网页 echo "

test html

" > ftx.html #在主配置文件中编辑配置 DocumentRoot "/usr/local/httpd/htdocs/test" #将默认访问目录改为刚创建的test目录 #配置这个目录 AllowOverride None Require all granted DirectoryIndex ftx.html #将索引改为这个网页,不修改的话则需要在IP后添加ftx.html #保存然后重启服务

连接保持

        Keep-Alive 允许客户端和服务器在单个 TCP 连接上发送和接收多个 HTTP 请求/响应,而不是为每个请求/响应都创建和销毁一个新的 TCP 连接,这可以显著提高性能和效率

        KeepAlive配置文件在httpd/conf/extra/httpd-default.conf

配置

        KeepAliveTimeout:一次连接多次请求之间的最大间隔时间,两次请求超过该时间连接断开

        KeepAlive On:是否打开连接保持,OFF关闭,ON打开

        MaxKeepAliveRequests:一次长连接能够传输的最大请求量  

        然后在主配置文件495行左右取消注释Include conf/extra/httpd-default.conf,即可开启

访问控制

作用

        控制对网站资源的访问

        为特定的网站目录添加访问授权

常用访问控制方式

        客户机地址限制

        用户授权限制

        客户机地址限制

#编辑主配置文件      Require ip 192.168.221.147        #限制只能192.168.221.147主机访问     Require ip 192.168.221.1/24       #限制只能192.168.221网段的主机访问     Require all granted               #允许所有主机访问     Require all denied                #拒绝所有主机访问     Require local                     #仅允许本地主机访问     Require [not] host <主机名或域名列表>        #允许或拒绝指定主机或域名访问     Require [not] ip           #允许或拒绝指定IP地址网络访问                          #组合写法         Require all granted         Require not ip 192.168.221.0/24 192.168.222.0/24        #以上配置根据需要填写即可 #示例      Require ip 192.168.222.0/24        #只允许192.168.222网段访问   #重启服务,这时我的宿主机就无法访问,我的宿主机网段为192.168.221

        使用用户授权限制

#创建用户,使用httpd/bin/htpasswd cd /usr/local/httpd #创建用户webadmin    -c 第一次创建用户时需要创建文件 -m  使用md5加密 bin/htpasswd -c -m /usr/local/httpd/conf/.awspwd zhangsan #再添加一个lisi,这时就不需要使用-c选项 bin/htpasswd -m /usr/local/httpd/conf/.awspwd lisi  #编辑主配置文件      AllowOverride None     #Require all granted     #Require ip 192.168.222.0/24            #这里要注释掉     AuthName "test html"                #向用户解释他们正在尝试访问的受保护区域     AuthType Basic                        #设置认证的类型,Basic 表示基本认证     AuthUserFile /usr/local/httpd/conf/.awspwd    #设置用于保存用户账号、密码的认证文件路径     Require valid-user             #要求只有认证文件中的合法用户才能访问   #重启服务,访问网页时即可看到需要登录 

相关内容

热门资讯

透视透视挂!智星菠萝有挂吗,h... 透视透视挂!智星菠萝有挂吗,hhpoker作笔实战视频,手册辅助教程(有挂技术)-哔哩哔哩1、透视透...
此事引发广泛关注!晃晃辅助软件... 此事引发广泛关注!晃晃辅助软件,竟然存在有辅助下载(证实有挂)-哔哩哔哩1、点击下载安装,晃晃辅助软...
解迷透视!德州透视脚本,智星菠... 解迷透视!德州透视脚本,智星菠萝透视(透视)切实一直总是有辅助神器(哔哩哔哩);1、玩家可以在德州透...
攻略辅助挂!xpoker辅助助... 攻略辅助挂!xpoker辅助助手,阿拉游戏中心辅助,法门辅助软件(今日头条)-哔哩哔哩1、下载好阿拉...
为了进一步!欢乐卡五星插件,其... 为了进一步!欢乐卡五星插件,其实存在有辅助脚本(有挂解密)-哔哩哔哩1、实时欢乐卡五星插件透视辅助更...
揭露透视!线上德州的辅助器是什... 揭露透视!线上德州的辅助器是什么,pokemmo脚本辅助器(透视)真是真的是有辅助软件(哔哩哔哩)1...
2026版攻略!cloudpo... 2026版攻略!cloudpoker外开挂,边锋老友修改器,绝活辅助挂(有挂秘诀)-哔哩哔哩1、下载...
随着!安卓闲逸辅助,总是真的是... 随着!安卓闲逸辅助,总是真的是有辅助挂(真实有挂)-哔哩哔哩安卓闲逸辅助辅助器是一种具有地方特色的麻...
详情透视!pokemmo手机脚... 详情透视!pokemmo手机脚本,拱趴大菠萝怎么开挂(透视)都是有辅助插件(哔哩哔哩)拱趴大菠萝怎么...
第三方辅助!约局吧怎么看有没有... 第三方辅助!约局吧怎么看有没有挂,八闽福建辅助,积累辅助挂(有挂详细)-哔哩哔哩1、约局吧怎么看有没...