官网下载地址

https://httpd.apache.org/ => https://httpd.apache.org/docs/current/platform/windows.html#down

=> https://www.apachelounge.com/download/#google_vignette

基本配置

使用文本编辑器,打开 Apache 服务器 conf 目录下 httpd.conf 文件

修改 ServerRoot 为Apache工作目录,如:D:/Apache。目录不要使用反斜杠。

修改 Listen 端口号,使用没有占用的端口号即可

修改 DocumentRoot,把 DocumentRoot 修改:D:/Apache/htdocs。

把Apache安装为Windows Service

以管理员的方式打开CMD.输入:D:\Apache\bin\httpd.exe -k install -n Apache  回车

意为安装Windows可托管的Apache服务,其中 "-n后面参数是Windows服务名称,之后可使用Windows管理服务的命令来管理apache服务

如 "net start/stop apache"(启动/停止服务)。服务安装完毕后,会自动测试,若有问题,窗口会提示错误,需要解决掉。

删除

D:\Apache\bin\httpd.exe -k uninstall -n Apache

启动

httpd 需要加入环境变量
httpd -k start          无详细的错误信息
httpd -k start -n apache    apach 为服务名
httpd -k restart -n apache    重启
net start apache        Windows托管服务命令

或计算机管理、服务里面启动停止

或找到bin目录下的ApacheMonitor.exe,运行,桌面右下角图标点开界面

停止 stop 或 shutdown

SSL基本配置

复制证书到 conf 目录下 ssl 文件夹(新建)

使用文本编辑器,打开 Apache 服务器 conf 目录下 httpd.conf 文件,并删除以下字段前 # 注释符

#LoadModule ssl_module modules/mod_ssl.so
#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
#Include conf/extra/httpd-ssl.conf

使用文本编辑器,打开 Apache 服务器 conf\extra 目录下 httpd-ssl.conf 文件

修改 httpd-ssl.conf 文件,将以下字段参数设置为上传的证书文件路径

SSLCertificateFile "C:/apache/conf/ssl/***.com.crt"
SSLCertificateKeyFile "C:/apache/conf/ssl/***.com.key"
SSLCertificateChainFile "C:/apache/conf/ssl/**_root_bundle.crt"

HTTP 自动跳转 HTTPS

使用文本编辑器,打开 Apache 服务器 conf 目录下 httpd.conf 文件,并删除以下字段前 # 注释符。

#LoadModule rewrite_module modules/mod_rewrite.so

并在网站运行目录配置字段。如: <Directory "C:/xampp/htdocs"> 字段中添加如下内容:

<Directory "C:/xampp/htdocs">
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</Directory>

代理

开启

#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_express_module modules/mod_proxy_express.so

添加配置

#正向代理
ProxyRequests On
ProxyVia On <Proxy "*">
Require host internal.example.com
</Proxy> #反向代理
ProxyPass "/foo" "http://foo.example.com/bar"
ProxyPassReverse "/foo" "http://foo.example.com/bar"

跨域

确保打开

LoadModule headers_module modules/mod_headers.so

找到需要配置的<Directory>  </Directory>,添加

Header set Access-Control-Allow-Origin * //允许所有ip访问,根据需要指定ip
Header set Access-Control-Allow-Credentials true
Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, authorization" //authorization是自定义的授权字段
Header set Access-Control-Allow-Methods "GET, POST, OPTIONS, HEAD, PUT, DELETE, PATCH" //允许所有方法,根据需要做适当删减

重定向

确保打开

#LoadModule rewrite_module modules/mod_rewrite.so

找到需要配置的<Directory>  </Directory>,添加

RewriteEngine on
RewriteRule /(.*) https://www.***.com RewriteRule /(.*) /other/path
 RewriteRule /(.*) /api%{REQUEST_URI}

官网文档 https://httpd.apache.org/docs/current/mod/mod_proxy.html

Apache 基本配置 代理 重定向 跨域 https ssl证书 在windows下常用命令的更多相关文章

  1. VUE前端项目配置代理解决跨域问题

    VUE前端项目配置代理解决跨域问题 问题如下,经常在本地调试接口出现这种问题 解决方式1:Chrome 的扩展插件 以前使用Chrome 的扩展插件,但是有时候还是会出现莫名其妙的问题. 需要梯子才行 ...

  2. 前端通过Nginx反向代理解决跨域问题

    在前面写的一篇文章SpringMVC 跨域,我们探讨了什么是跨域问题以及SpringMVC怎么解决跨域问题,解决方式主要有如下三种方式: JSONP CORS WebSocket 可是这几种方式都是基 ...

  3. windows环境下 nginx+iis 反向代理解决跨域问题

    项目基本完成,是时候花点时间整理一下最近的姿势了 1 什么是跨域? 网上对于跨域的概念会有大篇幅的文章去解释,似乎有点玄乎,初学者很容易对这个概念产生恐惧,跨域其实很简单,其实只要知道一点,无法跨域访 ...

  4. 搞懂:前端跨域问题JS解决跨域问题VUE代理解决跨域问题原理

    什么是跨域 跨域:一个域下的文档或脚本试图去请求另一个域下的资源 广义的跨域包含一下内容: 1.资源跳转(链接跳转,重定向跳转,表单提交) 2.资源请求(内部的引用,脚本script,图片img,fr ...

  5. nginx介绍(六) - 通过反向代理实现跨域访问

    前言 跨域访问问题, 相信很多人都遇到过, 并且都用不同的办法去解决过. 方法有很多种, 不一一叙述了. 这里主要使用nginx反向代理来解决跨域问题. 啥是跨域 假如你是百度开发人员, 在百度页面去 ...

  6. .NET 反向代理 YARP 跨域请求 CORS

    使用过 nginx 的小伙伴应该都知道,这个中间件是可以设置跨域的,作为今天的主角,同样的 反向代理中间件的 YARP 毫无意外也支持了跨域请求设置. 有些小伙伴可能会问了,怎样才算是跨域呢? 在 H ...

  7. nginx反向代理实现跨域请求

    nginx反向代理实现跨域请求 跨域请求可以通过JSONP实现,缺点是需要修改被请求的服务器端代码进行配合,稍显麻烦通过在自己服务器上配置nginx的反向代理,可以轻松实现跨域请求 思路 示例服务器A ...

  8. nginx反向代理解决跨域问题

    跨域:浏览器从一个域名的网页去请求另一个域名的资源时,域名.端口.协议任一不同,都是跨域 . 下表格为前后端分离的域名,技术信息:   域名 服务器 使用技术 前端 http://b.yynf.com ...

  9. VUE线上通过nginx反向代理实现跨域

    1.NGINX反向代理实现跨域 VUE代码中配置参考上一篇文章 nginx配置,红色框线内: 代码: location /list { proxy_set_header X-Real-IP $remo ...

  10. web代理进行跨域访问

    通过web代理进行跨域访问,http请求返回超时的问题定位   [现象] 在ajax通过web代理跨域访问时,http第一次登陆时正常,但是第二次再下发其他命令的时候总是返回 java.net.Soc ...

随机推荐

  1. 面试不愁,给你一份SpringBoot常用注解

    一.注解(annotations)列表 @SpringBootApplication: 包含了@ComponentScan.@Configuration和@EnableAutoConfiguratio ...

  2. span&不同字体

    <html> <style> .p1{ color:red; font-size:28px; } .p2{ font-weight:bold; } .p3{ font-styl ...

  3. GitLab能通过ssh克隆无法通过http克隆,也无法进行流水线,提示port 80: Connection refused

    问题记录:VM-Ubuntu20.04刚开始时使用NAT模式连接,后来改成桥接模式,改完之后原来使用docker启动的gitlab服务无法克隆,一直提示:fatal...没有远程库什么的,没解决后来删 ...

  4. Linux系统下修改KVM虚拟机配置

    一. 安装虚拟机 1. 设备重启进入BIOS,打开SMMU.F10保存退出 2. 进入系统后安装线管组件 virt-install qemu-kvm qemu-img virt-manager lib ...

  5. redisTemplate实现分布式锁(释放锁用lua脚本)

    package com.xxx.platform.util; import org.springframework.beans.factory.annotation.Autowired; import ...

  6. Chrome禁用开发者工具

    在一次工作中,所做的项目要求页面中不能右击,不能打开F12.一般来说可以禁用F12的按键,但是可以通过开发者工具进入.经过个人实验,以下方法适用于谷歌浏览器.火狐浏览器,以及使用谷歌内核的浏览器(如Q ...

  7. feign返回值解决反序列化对象嵌套List失败的问题

    文摘 问题描述 当用feign client远程调用时,返回的复杂对象反序列化报错. 错误信息: Caused by: com.fasterxml.jackson.databind.exc.Misma ...

  8. python安装及简单爬虫(爬取导师信息)

    1.下载: 解释器(我下的是3.8.2版本):https://www.python.org/downloads/ pycharm(我下的是2019.3.3版本):https://www.jetbrai ...

  9. 「SOL」打扫笛卡尔cartesian (模拟赛)

    为什么会有人推得出来第三题想不出来签到题啊 (⊙_⊙)? 题面 有一棵有根树 \(T\).从根节点出发,在点 \(u\) 时,设点 \(u\) 还有 \(d\) 个未访问过的儿子,则有 \(\frac ...

  10. 14.java 中缀表达式转后缀表达式

    思路如下: 1.初始化两个栈,运算符栈和中间结果栈 2.从左至右扫描 3.遇到数时直接压入s2 4.遇到运算符时,比较其与s1栈顶的优先级,有如下几种情况: 1)s1为空或栈顶为"(&quo ...