官网下载地址

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

启动

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

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

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

停止 stop 或 shutdown

SSL基本配置

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

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

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

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

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

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

HTTP 自动跳转 HTTPS

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

  1. #LoadModule rewrite_module modules/mod_rewrite.so

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

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

代理

开启

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

添加配置

  1. #正向代理
  2. ProxyRequests On
  3. ProxyVia On
  4.  
  5. <Proxy "*">
  6. Require host internal.example.com
  7. </Proxy>
  8.  
  9. #反向代理
  10. ProxyPass "/foo" "http://foo.example.com/bar"
  11. ProxyPassReverse "/foo" "http://foo.example.com/bar"

跨域

确保打开

  1. LoadModule headers_module modules/mod_headers.so

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

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

重定向

确保打开

  1. #LoadModule rewrite_module modules/mod_rewrite.so

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

  1. RewriteEngine on
  2. RewriteRule /(.*) https://www.***.com
  3.  
  4. 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. Bugku-ez_misc[wp]

    题目描述 1.拿到一份abc.rar文件,里面有一个加密call.png (1)通过file  . binwalk . 伪加密一顿小输出都不行,于是放进16进制编辑器查看: 文件头不对! (2)修改为 ...

  2. JavaSE——金额转换

    package com.zhao.stringtest; import java.util.Scanner; public class Test3 { //金额转换 //查表法 public stat ...

  3. MapReduce原理——Shuffle机制

    在Map方法之后,Reduce方法之前的数据处理过程称之为Shuffle. Map方法输出的数据会获得对应的分区,进入环形缓冲区(缓冲区一半写索引,另一半写数据).数据达到缓冲区的80%会发生溢写.在 ...

  4. laravel 服务容器,容器概念

    Laravel 服务容器 发现一篇讲服务容器的文章,讲的很好,转载过来laravel 服务容器 实质是工厂模式的升级,类的传递动态加载 ####以下内容转载 容器,字面上理解就是装东西的东西.常见的变 ...

  5. Java中静态方法和实例方法

    static修饰的方法可以直接用方法名.    访问 实例成员方法必须永实例成员调用

  6. dll帮助类

    项目中有很多时候用到外部dll,调用的时候如果用静态调用,程序exe目录下有很多dll,看起来很乱,不利于后续维护:动态调用可以把dll放在想放的文件夹内,但是如果一个dll要用到的函数很多,动态调用 ...

  7. 27_wbpack_自定义Plugin

    Tapable 要想学会自定义Plugin就要先了解Tapable这个库 在我们的wbpack中有两个非常重要的两个类Compiler和Compilation 他们是通过注入插件的方式,来监听webp ...

  8. Android版本历史

    版本 Code Name 代号 API 日期 NDK 1.0 Astro 铁臂阿童木  1     1.1 Bender, Petit Four 发条机器人 2     1.5 Cupcake  纸杯 ...

  9. yolov5的训练中断恢复

    Yolov5的恢复训练 方法一:使用自带参数-resume 1. train.py文件中找到函数parse_opt,修改参数–resume的默认参数为Ture 2. runs/train/exp*/w ...

  10. Influxdb客户端使用

    Influxdb客户端使用 1. 简介 Influxdb在网络上可以搜索到一个叫InfluxdbStudio的工具,但只能在window下使用,有时在其他系统下做简单数据查询时就比较麻烦,下面以Inf ...