APACHE安装与应用

news/2024/12/23 13:02:00/

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。


推荐:Linux运维老纪的首页,持续学习,不断总结,共同进步,活到老学到老
导航剑指大厂系列:全面总结 运维核心技术:系统基础、数据库、网路技术、系统安全、自动化运维、容器技术、监控工具、脚本编程、云服务等。
常用运维工具系列:常用的运维开发工具, zabbix、nagios、docker、k8s、puppet、ansible等
数据库系列:详细总结了常用数据库 mysql、Redis、MongoDB、oracle 技术点,以及工作中遇到的 mysql 问题等
懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂
非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

一、Apache安装

1、Apache简介

Apache(音译为阿帕奇)是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。

2、Yum安装

①yum安装与其他程序一样可以直接使用命令:yum install  httpd  -y。

②安装过程中注意查看提示信息,若无外网则需要配置本地yum源进行安装。

③出现以下提示即表示安装成功。注意:若出现error字样则表示安装出错

④ yum安装默认的主配置文件位置: /etc/httpd/conf/httpd.conf。

⑤ yum安装默认的主页面配置文件夹位置: /var/www/html/。注:此文件夹为默认安装时该服务器httpd服务的根目录,即访问时如:https://192.168.30.12/ 最后的/根目录表示为此文件夹!!!

⑥ yum安装默认的日志文件位置:/var/log/httpd/access_log此为正常日志记录,/var/log/httpd/error此为错误日志记录。


3、编译安装

①需要准备Apache的三个压缩包分别为:apr依赖包、apr-util依赖包以及httpd主包。本实验三个包在资源下载中即可下载名称为:编译安装Apache源码包。

②将源码包拖入到/opt目录中并解压,将apr和apr-util包剪切到httpd主包的srclib中并将版本号去掉
 

1

2

3

4

systemctl stop firewalld         #关闭防火墙

setenforce 0

yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl openssl-devel   #安装依赖包

 

环境准备完毕后进行编译安装三步曲:检测安装环境及工具、编译安装、写进磁盘。

第一步:检测安装环境及工具,指定安装目录并开启基本功能。

1

2

3

4

5

6

7

[root@localhost opt]# tar zxvf apr-1.6.2.tar.gz                    解压apr安装包

[root@localhost opt]# tar zxvf apr-util-1.6.0.tar.gz

[root@localhost opt]# tar jxvf httpd-2.4.29.tar.bz2

[root@localhost opt]# mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr

[root@localhost opt]# mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util

[root@localhost opt]# cd /opt/httpd-2.4.29/

[root@localhost httpd-2.4.29]# ./configure --prefix=/apps/httpd --enable-so --enable-ssl--enable-cgi --enable-rewrite --with-zlib --with-pcre --with-included-apr--enable-modules=most --enable-mpms-shared=all --with-mpm=event

  

第二步 :编译安装,此步骤是将包中源码转为二进制给服务器

第三步:写进磁盘,此步骤是将转为二进制的源码存进磁盘中至此编译安装Apache结束。

1

2

3

4

5

make                

make -j 2

ln -s /apps/httpd/conf/httpd.conf  /etc/

ln -s /apps/httpd/bin/*  /usr/local/bin/

 启动服务并验证

1

2

3

4

5

6

7

8

9

10

cp /apps/httpd/bin/apachectl /etc/init.d/httpd      #用于service服务管理

chmod +x /etc/init.d/httpd

vi /etc/init.d/httpd

#!/bin/bash                     #在第一行前插入新行,添加此三行内容

# chkconfig: 35 85 21                         #35级别自动运行  第85个启动 第21个关闭

# description: Apache is a World Wide Web server

chkconfig --add httpd                           #将httpd服务加入到service管理器

systemctl start httpd.service

  二、Apache配置应用
1、基础应用

①httpd -t 检查主配置文件是否有问题,有Syntax OK字样则表示无问题。

②httpd -h 表示查看帮助。

③httpd -v 表示查看版本。

④本机访问配置的httpd服务。

systemctl stop firewalld
#关闭防火墙
setenforce 0
#关闭selinux

浏览器输入服务器地址即可


⑤修改页面内容为自己想看到的内容。

vim /apps/httpd/htdocs/index.html
#打开编译安装的主页面配置文件
修改文件内容:

successful


 

2、隐藏版本号
①默认情况下是可以在访问页面是查看到版本号,方法如下。

②若是yum安装隐藏版本号只需要在主配置文件最后一行中添加:ServerTokens Prod[uctOnly] :Server: Apache,然后重启服务即可。

③编译安装需要在主配置文件开启从配置:加入此行 Include conf/extra/httpd-default.conf
然后在此文件中将此配置修改为:ServerTokens Prod 重启服务即可。

3、更改监听端口
①yum安装和编译安装更改监听端口都是在主配置文件中找到Listen 80 将80改为自己想要监听的端口重启服务即可。

②例如更改为8080,访问时就需要服务器地址:端口号即192.168.30.12:8080

4、httpd服务3种工作模式
①prefork:一对一模式,处理一个请求开启一个进程,缺点是httpd服务进程数有上限。

②worker:一对多模式,规定一个进程处理多少个请求,缺点是处理完自己的请求空闲不会告知服务器

③event:一对多模式,且有一个监听进程,若有处理完请求的空闲进程会通知服务器分配新的请求。

5、httpd服务处理过程
①建立连接

②接受请求

③处理请求

④访问资源

⑤构建响应报文

⑥发送响应报文

⑦记录日志


http://www.ppmy.cn/news/1503549.html

相关文章

多媒体技术:深入探索其组成部分与核心要点

目录 1. 多媒体的组成部分 1.1 文本 1.2 图像 1.3 音频 1.4 视频 1.5 动画 2. 多媒体的特点 2.1 多样性 2.2 交互性 2.3 集成性 2.4 动态性 2.5 真实性 3. 多媒体的核心要点 3.1 数据压缩 3.2 数据格式 3.3 数据传输 3.4 用户交互 3.5 实时处理 3.6 多媒体同…

Flask Bootstrap #2 - MVC架构

Reference https://medium.com/%E5%B7%A5%E7%A8%8B%E9%9A%A8%E5%AF%AB%E7%AD%86%E8%A8%98/%E4%BD%BF%E7%94%A8-python-flask-%E5%BB%BA%E7%AB%8B%E7%B6%B2%E7%AB%99-353e449a9bc8 1 MVC架构 在 Flask Boostrap #1 - 安装Flask 透过 app.route() 建立路由是 flask API 常见的…

从零开始的MicroPython(三) 按键与外部中断

上一篇:从零开始的MicroPython(二) GPIO及点灯代码 文章目录 前言硬件原理软件原理注意代码编写轮询外部中断其他 前言 点灯是嵌入式GPIO输出的典型,按键则是输入的典型。 硬件原理 按键对角接通。 软件原理 如果是一端接高电平,一端接单…

spark 3.0.0源码环境搭建

环境 Spark版本:3.0.0 java版本:1.8 scala版本:2.12.19 Maven版本:3.8.1 编译spark 将spark-3.0.0的源码导入到idea中 执行mvn clean package -Phive -Phive-thriftserver -Pyarn -DskipTests 执行sparksql示例类SparkSQLExam…

计算机毕业设计选题推荐-社区停车信息管理系统-Java/Python项目实战

✨作者主页:IT研究室✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

vue3使用递归组件渲染层级结构

先看看是不是你想要的: 当有层级去渲染的时候,嵌套的层级不明确,这时只能通过递归组件去渲染。 数据如下: 通过判断subCatalog这个字段的长度是否大于0来确定是否有下级。 上代码:(代码是使用uniapp开发的&#xff0…

3.redis客户端

1.命令行客户端 在安装redis的时候就已经安装好了,就是redis-cli redis-cli -h 127.0.0.1 -p 6379 -a 123456 -a 表示密码 -h 表示ip,不配置默认为本机 127.0.0.1 -p 表示端口,不配置默认为 6379 进入后可以输入ping,返回pong代表…

数据合成的艺术:sklearn中的数据生成技术

数据合成的艺术:sklearn中的数据生成技术 在机器学习领域,数据合成是一种重要的技术,它允许我们生成合成数据集,用于测试、验证模型或处理数据不足的问题。Scikit-learn(简称sklearn),作为Pyth…