window中安装Apache http server(httpd-2.4.58-win64-VS17)

windows中安装Apache http server(httpd-2.4.58-win64-VS17)

1、下载windows版本的的httpd,
https://httpd.apache.org/docs/current/platform/windows.html#down
这里选择的是Apache Lounge编译的版本
https://www.apachelounge.com/download/

2、解压到指定目录,这里解压到D盘根目录,得到D:\Apache24

3、修改配置文件http.conf

# 服务的根目录(根据实际情况修改)
Define SRVROOT "D:/Apache24"
# 需要监听的端口(根据需要修改)
Listen 80

4、修改之后,检测配置文件是否有语法错误

# 检测配置文件语法是否有错误
httpd.exe -t

在这里插入图片描述

语法OK,至于ServerName的问题可以暂时不处理。

6、注册服务,根据命令提示注册windows服务

在这里插入图片描述

# 注册服务,默认服务名为Apache2.4
httpd.exe -k install
# 卸载服务,默认卸载服务名为Apache2.4
httpd.exe -k uninstall# 注册服务,指定服务名
httpd.exe -k install -n Httpd2.4
# 卸载服务,指定服务名
httpd.exe -k uninstall -n Httpd2.4

7、启动服务
使用命令启动服务,或者打开服务管理窗口启动服务

# 使用net命令启动服务
net start Apache2.4

8、使用浏览器,查看
It works!
表示服务安装、运行正常。

9、部署前端项目、设置vhosts,编辑conf\extra\httpd-vhosts.conf。根据项目需要设置自己的VirtualHost。

<VirtualHost *:80>DocumentRoot D:/Apache24/distServerName 192.168.0.44<Directory D:/Apache24/dist>RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . index.html [L]SetOutputFilter DEFLATEOptions FollowSymLinksAllowOverride AllRequire all grantedDirectoryIndex index.php index.html index.htm default.php default.html default.htm</Directory>ProxyRequests offProxyPass /prod-api http://192.168.0.44:8097ProxyPassReverse /prod-api http://192.168.0.44:8097
</VirtualHost>
# 在主配置文件httpd.conf中把引入httpd-vhosts.conf文件的注释去掉
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

10、处理异常问题
此时重启服务,发现服务是无法启动的,我们再使用httpd.exe -t,检测一下配置文件,根据提示解决问题

①RewriteEngine on,开启了重写引擎,需要引入相关模块

在这里插入图片描述

在主配置文件httpd.conf中搜索关键词,把重写模块引入进来

# 把注释去掉
LoadModule rewrite_module modules/mod_rewrite.so

②vhost中使用了反向代理,需要把代理模块引入进来

在这里插入图片描述

在主配置文件httpd.conf中引入代理请求模块

# 把注释去掉
LoadModule proxy_module modules/mod_proxy.so
# 引入上述两个模块后,服务可以正常启动了,但是仍不能完成代理请求工作,项目是http请求,所以还需要把http这个子模块引入进来
LoadModule proxy_http_module modules/mod_proxy_http.so

11、访问项目,查看运行情况。

12、隐藏Httpd版本信息和操作系统信息
可以在\conf\extra中新建一个httpd-servertokens.conf配置文件,从httpd-default.conf中把ServerTokens的信息复制过来。
并修改为ServerTokens Prod。之后在主配置文件中引入该文件,并重启服务。

#
# ServerTokens
# This directive configures what you return as the Server HTTP response
# Header. The default is 'Full' which sends information about the OS-Type
# and compiled in modules.
# Set to one of:  Full | OS | Minor | Minimal | Major | Prod
# where Full conveys the most information, and Prod the least.
#
ServerTokens Prod
# ServerTokens 
Include conf/extra/httpd-servertokens.conf

小尾巴~~
只要有积累,就会有进步

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/615745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python函数装饰器参数统计调用时间和次数

1 python函数装饰器参数统计调用时间和次数 python在函数装饰器外层定义一个函数生成封闭作用域来保存装饰器入参&#xff0c;供装饰器使用。 1.1 装饰器统计调用时间和次数 描述 通过类的可调用实例装饰器来统计函数每次调用时间和总调用时间&#xff0c;以及调用次数。 …

C#写windows服务,实现把检测软件崩溃工具写成服务 自动运行

一、打开Visual Studio&#xff0c;创建项目->Windows 服务(.NET Framework) 二、点击Service.cs 点击切换到代码视图 static Timer Timer; private Thread monitorThread; private static string logFilePath; private static Process winFormsProcess; public Service1(…

如何修复DLL错误或丢失的问题,这里提供几种方法

DLL错误是指DLL文件的任何错误&#xff0c;一种以.dll文件扩展名结尾的文件。 DLL错误可能出现在微软的任何操作系统中&#xff0c;包括Windows 10、Windows 8、Windows 7、Windows Vista和Windows XP。 DLL错误尤其麻烦&#xff0c;因为存在许多这样类型的文件&#xff0c;所…

obgs格式能通过Dasviewer导入到Revit吗?

答&#xff1a;Dasviewer可以支持las转换osgb&#xff0c;再通过osgb转换fbx或者obj。当然也可以通过重建的方式建模。 DasViewer是由大势智慧自主研发的免费的实景三维模型浏览器,采用多细节层次模型逐步自适应加载技术,让用户在极低的电脑配置下,也能流畅的加载较大规模实景三…

入门教程:使用 Postman 发送 post 请求

Postman 是一个实用的开发工具&#xff0c;它让发送各类 POST 请求成为了可能&#xff0c;包括文本、JSON、XML 以及文件等。开发者利用此工具不仅能够检验API的功能性&#xff0c;还能仿真客户端的请求行为&#xff0c;进而深入了解客户端如何与 API 进行互动。 HTTP 协议中的…

半小时实现GPT纯血鸿蒙版

仅需半小时&#xff0c;即可实现纯血鸿蒙版本的ChatGPT&#xff01; 废话少说&#xff0c;先看效果图&#xff1a; 如上图所示&#xff0c;这个小Demo实现了AI智能问答。靠右加粗的文本是用户点击底部提交按钮后出现的&#xff1b;后面靠左对齐的普通文本是来自AI的回答内容。…

MySQL与Java JDBC数据类型对照

MySQL数据类型JAVA数据类型JDBC TYPEBIGINTLongBIGINTTINYINTByteTINYINTSMALLINTShortSMALLINTMEDIUMINTIntegerINTEGERINTEGERIntegerINTEGERINTIntegerINTEGERFLOATFloatREALDOUBLEDoubleDOUBLEDECIMALBigDecimalDECIMALNUMERICBigDecimalNUMERICCHARStringCHARVARCHARStrin…

(第48-59讲)STM32F4单片机,FreeRTOS【事件标志、任务通知、软件定时器、Tickless低功耗】【纯文字讲解】【原创】

文章目录 &#x1f534;&#x1f7e1;&#x1f7e2;其他文章链接&#xff0c;独家吐血整理1、纯文字&#xff08;待补充&#xff09; &#x1f534;&#x1f7e1;&#x1f7e2;其他文章链接&#xff0c;独家吐血整理 【吐血总结】FreeRTOS难点、Systick中断-滴答定时器、PendS…

ES6语法详解+面试必备

ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript的一个版本&#xff0c;它于2015年发布。ES6引入了很多新的语法和功能&#xff0c;使得JavaScript更加强大、灵活和易于使用。 一、块级作用域&#xff1a; ES6引入了let和const关键字&#xff0c;可以在块级作用域中…

IP定位技术:如何保护患者的隐私和医疗数据安全?

随着科技的飞速发展&#xff0c;互联网已经深入到我们生活的方方面面&#xff0c;医疗行业也不例外。然而&#xff0c;这也带来了网络安全问题。如何保护患者的隐私和医疗数据的安全&#xff0c;成为了医疗行业面临的重大挑战。IP定位技术的应用&#xff0c;为解决这一问题提供…

Unity中URP下抓屏的 开启 和 使用

文章目录 前言一、抓屏开启1、Unity下开启抓屏2、Shader中开启抓屏 二、抓屏使用1、设置为半透明渲染队列&#xff0c;关闭深度写入2、申明纹理和采样器3、在片元着色器使用请添加图片描述 三、测试代码 前言 我们在这篇文章中看一下&#xff0c;URP下怎么开启抓屏。 一、抓屏…

(代码模板)JAVA_返回类R

个人留存用&#xff0c;通用返回类R代码模板&#xff1a; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data;import java.io.Serializable; import java.util.HashMap; import java.util.Map;/*** author &#…

《共建开源》系列:Airtest-Framework - UI自动化框架系统

Airtest- Framework 平台简介 Airtest- Framework 是 基于 unittest、Flask、Airtest 搭建的 开源的 UI 自动化框架系统 提供 HTTP API 接口&#xff0c;实现自动解析包名并自动执行 相应目录下的 Case。目前仅支持单台设备连接。多个任务会自动排队处理。 系统要求 Pytho…

【动态规划】【二分查找】C++算法 466 统计重复个数

作者推荐 【动态规划】458:可怜的小猪 涉及知识点 动态规划 二分查找 力扣:466 统计重复个数 定义 str [s, n] 表示 str 由 n 个字符串 s 连接构成。 例如&#xff0c;str [“abc”, 3] “abcabcabc” 。 如果可以从 s2 中删除某些字符使其变为 s1&#xff0c;则称字符串…

互信息法的原理详解

文章目录 互信息法&#xff08;上&#xff09;互信息是什么从信息增益角度理解互信息从变量分布一致角度理解互信息 卡方检验与离散变量的互信息法 互信息法&#xff08;上&#xff09; 尽管f_regression巧妙的构建了一个F统计量&#xff0c;并借此成功的借助假设检验来判断变…

跨境商城系统如何开发代购商城、国际物流、一件代发等功能?

跨境商城系统的开发涉及到多个方面&#xff0c;其中代购商城、国际物流和一件代发等功能是其中的重要组成部分。本文将详细介绍如何开发这些功能&#xff0c;以帮助跨境商城系统更好地满足市场需求。 一、代购商城的开发 代购商城是跨境商城系统中的重要功能之一&#xff0c;它…

互联网加竞赛 基于大数据的股票量化分析与股价预测系统

文章目录 0 前言1 课题背景2 实现效果3 设计原理QTChartsarma模型预测K-means聚类算法算法实现关键问题说明 4 部分核心代码5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于大数据的股票量化分析与股价预测系统 该项目较为新颖…

小程序基础学习(导航栏组件)

目标&#xff1a;把导航栏抽离成组件&#xff0c;

oracle 19c容器数据库data dump数据泵传输数据(2)---11g导19c

目录 1.在11gnon-cdb数据库中创建测试用户 2.在19cCDB容器数据库中新建pdb2 3.执行命令导出 4.执行命令导入 Exporting from a Non-CDB and Importing into a PDB 我們要記住一点&#xff1a;如果是全库导出导入的话&#xff0c;目标数据库没有的表空间我们要事先创建&#…

Java中输入和输出处理(四)序列化和反序列化

Java中输入和输出处理&#xff08;四&#xff09;序列化和反序列化的笔记 一、序列化 序列化是将对象的状态信息转换为可以存储或传输的形式的过程。在Java中&#xff0c;我们可以使用java.io.Serializable接口来实现对象的序列化。 示例&#xff1a; import java.io.*;clas…