legend3---apache配置https重定向

legend3---apache配置https重定向

一、总结

一句话总结:

网上找不到答案的原因是因为没有精准的描述问题,没有把问题描述清楚:尽量把关键词描述清楚

1、apache将80端口重定向443的具体步骤(在 VirtualHost 中)?

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}$1 [L,R]
<VirtualHost *:80>
    RewriteEngine on
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^(.*)?$ https://%{SERVER_NAME}$1 [L,R]
    ServerName jenkins.zhuyst.cc
</VirtualHost>

二、Apache配置URL重定向

转自或参考:Apache配置URL重定向
https://www.cnblogs.com/zzhaolei/p/11067781.html

修改/etc/httpd/conf/httpd.conf文件的内容

<Directory "/var/www">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

<Directory "/var/www">
    AllowOverride All
    # Allow open access:
    Require all granted
        RewriteEngine On
        RewriteRule /task/* /index.html?$1
</Directory>
 

二、Apache配置SSL证书以及HTTP重定向HTTPS

转自或参考:Apache配置SSL证书以及HTTP重定向HTTPS
https://blog.csdn.net/qq_35264464/article/details/80329721

如果一开始只安装了httpd,还要安装mod_ssl才能开启SSL

所以记得yum install mod_ssl

配置HTTPS

  • 前4行按照腾讯云去配置证书文件和秘钥文件
  • ServerName是在DNS解析里配置的A记录
  • ProxyPassProxyPassReverse是我用来代理到8081端口的配置,如果是静态目录应该配置DocumentRoot
<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/httpd/cert/jenkins/2_jenkins.bnuztuhms.cn.crt
    SSLCertificateKeyFile /etc/httpd/cert/jenkins/3_jenkins.bnuztuhms.cn.key
    SSLCertificateChainFile /etc/httpd/cert/jenkins/1_root_bundle.crt

    ServerName jenkins.bnuztuhms.cn
    ProxyPass / http://www.bnuztuhms.cn:8081/
    ProxyPassReverse / http://www.bnuztuhms.cn:8081/
</VirtualHost>

HTTP重定向HTTPS

将所有到80端口(HTTP)的请求重写/重定向到443端口(HTTPS)即可,不要忘记ServerName应与443端口的配置一致

<VirtualHost *:80>
    RewriteEngine on
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^(.*)?$ https://%{SERVER_NAME}$1 [L,R]
    ServerName jenkins.zhuyst.cc
</VirtualHost>
 
原文地址:https://www.cnblogs.com/Renyi-Fan/p/11909416.html