• Apache 基本配置 代理 重定向 跨域 https ssl证书 在windows下常用命令


    官网下载地址

    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

  • 相关阅读:
    成功给家长们举办了supermemo软件安装与使用的培训
    抓到两只IE8的虫子
    域名保护期是咋回事
    IE8开发人员工具,让web开发的客户端调试畅通无阻
    (转)网站成功的法则
    谢文的社区观
    玩《征途》感受——这么多年白玩游戏了 (zt)
    社区运营 VS 征途(转)
    SQLite多线程写锁文件解决方案
    sqlite和sql server语法上的一些区别
  • 原文地址:https://www.cnblogs.com/jiayouba/p/15650263.html
Copyright © 2020-2023  润新知