【问题标题】:Wordpress redirect from https to httpWordpress 从 https 重定向到 http
【发布时间】:2020-07-29 21:13:20
【问题描述】:

我正在运行一个 Wordpress SSL 网站,它需要一个选项卡为非 SSL,因为它运行一个不安全的 websocket,否则会因为混合内容而被拒绝。

在这方面,我正在 .htaccess 文件中进行重定向:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/(stage/)$
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*) http://%{HTTP_HOST}/$1 [R=301,L]

这确实使这个特定的标签不安全,但是,它也导致了以下两个问题:

1.) 从 https 切换到 http 后,我丢失了任何 wordpress 状态信息 - 它的行为基本上就像用户没有登录一样。返回到其他安全选项卡,信息又回来了。

2.) 这个特定选项卡包括三个 iFrame,我只能通过 https 而不是通过 http 来包含它们。当通过 http 包含它们时,我在问题 1 之上。)也完全失去了 wordpress 数据库访问权限。

事实上,从 https 切换到 http 只是一种解决方法,但目前是一个很好的折衷方案。它可以在没有 Joomla 中提到的问题的情况下工作,现在我想知道是否有办法在 Wordpress 中摆脱它们。

提前致谢, 最好的

亚历克斯

【问题讨论】:

    标签: database wordpress ssl redirect


    【解决方案1】:

    WordPress 的 SECURE_AUTH_COOKIE 等于 'wordpress_sec_' . md5(get_site_option('siteurl'))。因此,当您更改环境(从安全到非安全)时,siteurl 会发生变化,并且您的会话 cookie 哈希会有所不同。在继续之前,您需要用户同时登录安全和非安全。

    相关代码位于wp-includes/default-constants.php。因为这在任何插件/主题代码之前运行。你必须在wp-config.php 级别破解它。然后检查它在wp-includes/pluggable.php 文件中的使用情况,以了解未来是否需要修改。可插入文件在插件初始化之后运行,因此如果需要,您可以在那里挂接过滤器。

    【讨论】:

    • 首先非常感谢您的回答,似乎确实有解决方法!那么 - 我是否正确理解首先需要在 wp-config.php 中应用更改?由于我是一个完整的 wordpress 新手,您能否提供更多详细信息?否则我不知道从哪里开始。再次感谢!
    猜你喜欢
    • 2019-04-11
    • 2016-09-01
    • 2019-05-17
    • 2018-10-18
    • 1970-01-01
    • 1970-01-01
    • 2015-12-27
    • 2014-05-14
    • 2015-10-27
    相关资源
    最近更新 更多