除了https之外,Wordpress rss提要

时间:2017-01-24 11:42:34

标签: wordpress .htaccess ssl rss

我们的邮件列表提供商要求我强制rss feed不是https而是简单的http。

我们的网站在Wordpress 4.7.1上运行,并使用简易HTTPS重定向和SSL不安全内容修复程序插件来使网站正常工作。

有些人告诉我也许我应该为.htaccess添加一些例外但我在论坛中找不到如何。

我已经创建了这个帖子,但我无法理解它。 htaccess force ssl except for rss feeds

这是我在.htaccess文件中找到的内容

# BEGIN HTTPS Redirection Plugin
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
# END HTTPS Redirection Plugin

感谢您的帮助。 Gergo

2 个答案:

答案 0 :(得分:1)

您需要使用模板重定向挂钩。

add_action( 'template_redirect', 'template_redirect', 1 );

function template_redirect() {

    if ( is_ssl() && ! is_admin() ) {

        if ( 0 === strpos( $_SERVER['REQUEST_URI'], 'your_url' ) ) {

            wp_redirect( preg_replace( '|^https://|', 'http://', $_SERVER['REQUEST_URI'] ), 301 );
            exit();

        }

    }

}

请将您的网址粘贴到your_url参数中。

答案 1 :(得分:0)

您可以使用:

RewriteEngine On

#Check to see if HTTPs is not on, turn it on.
RewriteCond %{HTTP:X-Forwarded-SSL} !on
RewriteCond %{REQUEST_URI} ^\/(foobar)
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R=301]

#If HTTPs is on, turn it off for foobar.
RewriteCond %{HTTP:X-Forwarded-SSL} =on
RewriteCond %{REQUEST_URI} !^\/(foobar)
RewriteRule (.*) http://%{HTTP_HOST}/$1 [L,R=301]

将foobar更改为相关目录。在测试之前,请确保清除缓存。