• IIS10下使用url重写模块(rewrite)完成:http 跳转 https 、不带www 跳转到 www,并排除指定域名,以及“若要安装iis URL重新模块2,需要iis7.2版或更高版本”问题的解决


    主要解决 http跳转问题,然后顺道解决下 不带www的域名跳转到www的域名下。

    例如 http://PrintY.com 跳转到 https://www.PrintY.com。

    当然还有一个问题,就是IIS绑定了多域名,指定域名不想让跳转,例如还绑定了 admin.PrintY.com ,那么这个域名就不想让它自动跳转。

    我这里用的是rewrite完成URL的重新来实现的,服务器: Windows server 2019 、IIS10

    1、下载rewrite_x64_zh-CN.msi

    我用的是 rewrite 2,是以前下载的,就凑合用了,如果安装过程中提示:解决“若要安装iis URL重新模块2,需要iis7.2版或更高版本。”这个问题,解决方法如下:

      1、【Win+R】大凯运行框,然后输入【regedit】确定打开注册表;

      2、找到:HKEY_LOCAL_MACHINESOFTWAREMicrosoftInetStp (也可以复制到路径上)

      3、选中以后,找到名称为“MajorVersion”的节点(如果有两个则选中第一个)

       4、右键“修改”

     将“a”改成“9”

      5、重新安装rewrite,这个时候应该可以了,安装完毕以后,记得把值该回来。

    2、配置url重写规则

    右键“打开”->选择最后边“操作“下的的“添加规则”->“空白规则”,然后“确定”

     模式:(.*)    ,然后展开“条件”

    条件输入:{HTTPS}    模式:^OFF$  ,然后继续往下滑动,继续填写

     

    重定向URL:https://{HTTP_HOST}/{R:1}    重定向类型:已找到(302) 或 参阅其它(303)

    然后点击“应用”就行了,这块我说下,现在这么配置有个问题,例如:http://PrintY.com 会自动跳转到  https://PrintY.com,所以这块要改成:https://www.PrintY.com/{R:1} ,改成这样,无论是否带www都会跳转到wwww.上面!

    接下来还有一个问题,那就是排除其它不想跳转的域名,这个到“添加条件”那一步,再额外添加一个条件:

    条件输入:{HTTP_HOST}      模式:^要排除的域名$   例如:admin.PrintY.com

    注意下:这块 “检查输入字符串是否:” 选择 “与模式不匹配” !

  • 相关阅读:
    链家大数据多维分析引擎实践
    html 读取变量
    django 分配字典给前台模板
    django将数组传递给前台模板
    fetachone和fetchall
    django捕获url中的值
    django 控制页面跳转
    MySQL的前缀索引及Oracle的类似实现
    django url捕获
    django 页面调用方法
  • 原文地址:https://www.cnblogs.com/PrintY/p/14270728.html
Copyright © 2020-2023  润新知