官网下载地址

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. JavaSE——this关键字

    this修饰的变量用于指代成员变量,其主要作用是(区分局部变量和成员变量的重名问题) 方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,而不是成员变量 方法的形参没有与成员变量同名,不带 ...

  2. Python中Websocket的实现及基本原理

    一.什么是 WebSocket ? WebSocket 是一种标准协议,用于在客户端和服务端之间进行双向数据传输.但它跟 HTTP 没什么关系,它是基于 TCP 的一种独立实现. 以前客户端想知道服务 ...

  3. jquery 中根据日期计算天数,以及去掉字符串中的空格

    //方法 增添dayNumber天 ,dates:日期 年月日 function SubDay(dayNumber, dates) { var date= new Date(dates ); date ...

  4. T137288 铸星

    有以下三种情况: 只有一个数,直接输出. 有正数也有复数,那就先让负数撞正数得到更小的负数,直到剩下最后一个正数撞所有的负数,答案是所有数的绝对值之和. 仅有正数或者仅有负数,就先找一对不相等的相邻的 ...

  5. IO流(1)

    IO流(1) 目录 IO流(1) 文件 创建文件 获取文件信息 目录的操作和文件删除 文件 文件流 文件在程序中以流的形式来操作 输入流:数据从数据源(文件)到程序(内存)的路径 输出流:数据从程序( ...

  6. 使用EmguCV3.0.0调用摄像头并设置帧率

    此教程使用emgu3.0.0,其他版本兼容性未知. 转载请注明出处: http://www.cnblogs.com/zaiyuzhong/p/open-camera-with-emgu3_0_0.ht ...

  7. 星链技术设计(starlink techriage design)

    1.星链  定义:  星链,是美国太空探索技术公司的一个项目,太空探索技术公司计划在2019年至2024年间在太空搭建由约1.2万颗卫星组成的"星链"网络提供互联网服务,其中158 ...

  8. VMware Workstation 未能启动VMware Authentication Service

    (1)今天像往常一样打开vmware启动虚拟机,但是弹出个框,显示VMware Workstations 未启动VMware Authorization Service,让我尝试手动启动. (2)Wi ...

  9. 004 jmeter断言、集合点、函数、分布式

    1.断言 *定义:断言就是让程序代替人工去判断程序响应数据是否达到预期结果. *断言可以检查返回数据的正确性与完整性 *常见的断言 *响应断言(断言状态码+断言文本值)哪个接口需要断言就在哪一个接口后 ...

  10. shell脚本变量加减

    #! /bin/bash test_1=1 test_2=2 test = $(expr $test_1 - $test_2)  #减法 test = $(expr $test_1 + $test_2 ...