【问题标题】:.htaccess redirect within WordPress Multi-site.htaccess 在 WordPress 多站点中重定向
【发布时间】:2013-04-30 16:30:04
【问题描述】:

使用标准的 WordPress 设置,我在 htaccess 中有以下内容...

RewriteCond %{QUERY_STRING} ^registration=disabled$ [NC]
RewriteRule ^wp-login.php$ http://www.mysite.com/register [L,R=301,NC]

哪个成功地将任何调用重定向到 wp-login.php?registreation=disabled 到 http://www.mysite.com/register

我现在已经转移到多站点,因此需要重定向将用户发送到他们正在浏览的网络中的任何站点,我该怎么做?

更新

澄清一下,由于我现在使用的是多站点,我现在可能会面临不同的子域和地址,例如

www.mydomain1.com/testsite www.mydomain2.com/example www.mydomain3.com/various

我正在寻找一个适合所有 htaccess 的命令来重定向

【问题讨论】:

    标签: wordpress .htaccess


    【解决方案1】:

    您可以从RewriteRule 中删除域:

    RewriteCond %{QUERY_STRING} ^registration=disabled$ [NC]
    RewriteRule ^wp-login.php$ /register [L,R=301,NC]
    

    测试了here,它似乎可以工作,尽管它不会修剪查询字符串(但是原始的也不会)。如果要删除查询字符串,请将@​​987654324@ 设置为:

    RewriteRule ^wp-login.php$ /register? [L,R=301,NC]
    

    编辑:我目前无法在真实系统上对此进行测试,不幸的是我提供的链接不支持${HTTP_HOST},但是您可以添加另一个匹配的条件 any http_host,并在 RewriteRule 中使用反向引用来输入该值:

    RewriteCond %{QUERY_STRING} ^registration=disabled$ [NC]
    RewriteCond %{HTTP_HOST} (.*)
    RewriteRule ^wp-login.php$ http://%1/register? [L,R=301,NC]
    

    如前所述,我目前无法对此进行测试,但理论上它应该可以工作 :)

    【讨论】:

    • 不确定这是否适用于我的情况,因为它只是重定向到主多站点帐户,而不是请求来自的站点。我已经更新了问题..
    猜你喜欢
    • 1970-01-01
    • 2016-06-26
    • 2015-05-06
    • 2017-12-07
    • 1970-01-01
    • 1970-01-01
    • 2012-06-03
    • 2018-07-16
    • 2017-10-20
    相关资源
    最近更新 更多