在 htaccess 中如何将用户从 http 重定向到 https 并再次返回

2023-12-05

我正在尝试让登录页面重定向到 https,并将所有其他页面恢复为标准 http。当我将 /login 作为地址时,它显示为 /index.php?page=login 并且不显示在安全页面上。

有问题的 htaccess 代码如下:

RewriteCond %{SERVER_PORT} 80 
RewriteCond %{REQUEST_URI} ^/login$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA,L]

RewriteCond %{REQUEST_URI} !^/login$
RewriteCond %{SERVER_PORT} 443 
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA,L]

RewriteRule ^([a-zA-Z0-9_\-\(\)]+)[/]?$ /index.php?page=$1

最好在应用程序级别执行此操作,即直接将“登录”链接作为 HTTPS 链接发送。

从 HTTP 重定向到 HTTPS 的问题在于客户端首先通过纯 HTTP 发出请求。在仅访问 HTTPS 初始页面的情况下,这不一定是问题,但如果您在透明重定向到 HTTPS 页面的 HTTP 请求中发送凭据,那么它们无论如何都会被泄露。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 htaccess 中如何将用户从 http 重定向到 https 并再次返回 的相关文章

随机推荐

  • 在 Haml 中保留属性顺序

    如果我在 HAML 中创建一个 XML 元素 tag b gt b a gt a 我得到这个输出
  • 如何通过chrome api设置下载位置

    我正在使用 chrome experimental downloads download 来下载网址 但无法设置下载位置 所有的url都下载到chrome的默认位置 我已经厌倦了 url xxxxxxxxxx filename file p
  • Magento 多商店多货币

    我有 2 家商店 其中 1 家卖 2 美元加元 我的第一家商店工作正常 当我发送到贝宝时 我的第二家商店显示产品价值加元 当时加元价值转换为美元 你能建议我如何解决我需要的它 当贝宝显示加元时 这个问题的解决办法在于这个 Magento 线
  • C++ 如何使用 ESC 按钮终止我的程序

    这是我的主要功能 我使用 Visual Studio 2012 Express 代码工作正常 我的问题是 当用户按下 ESC 按钮而不是 1 时 我将如何终止此循环 虽然我更喜欢在 UNIX 和 Windows 上都可以使用的解决方案 但如
  • 编辑视图中多选列表框的超级简单实现

    此处使用 MVC4 与 EF 和 CF 糟糕 我有一堂这样的课 public class Feature public int ID get set public string Desc get set 还有这样的一个 public cla
  • GetAdaptersInfo 和 GetAdaptersAddressess BufferLength 参数

    我这里有一些 C 遗留代码 它们做了一些我不明白的事情 我在运行 Windows XP 的计算机上以 Visual C 2008 Express Edition 运行它 该代码使用了一些 Windows 函数 获取适配器信息和获取适配器地址
  • 在 jsfiddle 上看不到代码,只有结果[关闭]

    Closed 这个问题是无关 目前不接受答案 我一直在看 jsfiddle 在其他问题上发布的内容 但由于某种原因我只能看到结果而不是代码 起初这似乎是随机发生的 但现在看起来相当一致 JSfiddle 如何在没有任何代码的情况下渲染结果
  • 在phonegap应用程序中显示pdf

    如何在中显示在线 PDFMy Phonegap App 我在尝试iframe但是PDF不显示还有其他解决办法吗 我想在我的应用程序中显示来自 URL 的 PDF 而不是在默认 PDF 查看器中显示 提前致谢 您可以使用 Google PDF
  • 从 .NET Windows 应用程序中运行 powershell 脚本

    我需要从 vb net windows 应用程序中运行脚本 我的脚本在后台运行得很好 Using MyRunSpace As Runspace RunspaceFactory CreateRunspace MyRunSpace Open U
  • guice 与提供商的多重绑定

    我试图在我的代码中包含此内容 Inject private Map
  • Python 命令行 -x 选项

    我最近看到 python 将 x 作为命令行选项 它的作用是在此处的文档中解释的 python x Skip the first line of the source allowing use of non Unix forms of cm
  • Hudson svn 凭证

    如何通过 shell 在 Hudson 中输入 subversion 凭据 我尝试在 HUDSON HOME 中生成文件 hudson scm SubversionSCM xml 并重新加载配置 但未应用更改 从 shell 输入凭据的最简
  • 我想将变量参数传递给外部 SQL 文件(带有 SQL*Plus 的 PL/SQL)

    我已经在这个论坛和谷歌上搜索了我的问题的答案 但我找不到我的挑战的具体答案 这就是为什么我在这里问这个问题 希望能得到你们其中一个人的答复 我想使用多个 SQL 文件 而一个 SQL 文件是使用参数执行其他 SQL 文件的控制文件 该文件名
  • Android 分享文字和图片

    我需要通过 Facebook 电子邮件等共享文本 图像 现在 我使用以下代码 Intent intent new Intent Intent ACTION SEND intent setType image intent putExtra
  • 如何从 Linux 环境交叉编译适用于 MacOS 的 R 包?

    我正在运行 Linux 并尝试编译 R 包以在 Mac 上使用 我只能找到Linux gt Windows和MacOS gt Windows交叉编译指令 有谁知道我应该做什么来编译 R 的 MacOS 二进制包 或者 我会满足于构建服务器
  • 警告:mysqli_connect():MySQL 服务器已消失

    我编写了一个简单的 PHP 代码来连接到 MySQL 服务器 如下所示
  • iOS:旋转 iPhone 后,直接从仅支持纵向模式的视图控制器以横向方式呈现视图控制器

    我有一个应用程序始终以纵向模式呈现 在 Xcode 项目摘要中 仅支持纵向方向 现在我想做的是 当我使用该应用程序时 从该应用程序的任何视图控制器中 如果我向右横向旋转设备 该应用程序会在横向右侧显示一个视图控制器 ARViewContro
  • 从 C++ 中的离散概率分布中采样

    我是 C 新手 对缺乏可用的 通用的概率操作工具 即 Boost 和标准库中缺乏的东西 感到非常惊讶 我已经用其他语言完成了大量科学编程 但标准和 或无处不在的第三方附加组件始终包含全套概率工具 一位朋友宣称 Boost 是 C 的同等无处
  • 使用 -l 标志链接静态库

    如何使用 l 标志编译我的 makefile 我有一个看起来像的 makefile myLibrary gcc c myLibrary c o myLibrary o ar cr libmyLibrary a myLibrary o 然后我
  • 在 htaccess 中如何将用户从 http 重定向到 https 并再次返回

    我正在尝试让登录页面重定向到 https 并将所有其他页面恢复为标准 http 当我将 login 作为地址时 它显示为 index php page login 并且不显示在安全页面上 有问题的 htaccess 代码如下 Rewrite