【问题标题】:Redirect domain URL to subfolder of another domain in php将域URL重定向到php中另一个域的子文件夹
【发布时间】:2019-06-11 08:37:33
【问题描述】:

我对 php 很陌生。我想重定向这个链接(这个没有它自己的主机)

example.com/123456

到(这个是有主机的父网站)

www.abcd.com/subfolder/123456

123456 是动态字母数字。

在父站点托管的子文件夹中,已经有一个.htaccess文件将www.abcd.com/subfolder/123456重定向到www.abcd.com/subfolder/index.php?value=123456

.htaccess 文件内容

RewriteEngine On

RewriteRule ^\w+$ index.php?value=$0

任何人都知道如何将带有参数的 url 重定向到具有相同参数的另一个域的子文件夹。谢谢。

编辑:

我为 example.com 创建了一个新别名并将其重定向到 www.abcd.com/example_com 并将我的 index.php 托管到 example_com 目录。现在,如果我打开此链接example.com/?value=123456,它会成功转移到此链接http://www.abcd.com/example_com/?value=123456。但是如果我打开example.com/123456,它会显示File not found (404 error)

知道如何成功地将example.com/123456 转移到abcd.com/example_com/?value=123456。谢谢

【问题讨论】:

    标签: php .htaccess redirect url-rewriting


    【解决方案1】:

    您可以在example.com 的站点根目录.htaccess 中使用此规则:

    RewriteEngine On
    
    RewriteCond %{HTTP_HOST} ^(?:www\.)?example\.com$ [NC]
    RewriteRule ^(\w+)/?$ http://abcd.com/subfolder/$1 [L,R=301]
    

    【讨论】:

    • 您的答案似乎是正确的,但为此我必须拥有一个我没有的 example.com 主机。无论如何,我可以通过仅托管 abcd.com 来实现这一目标吗?
    • 很遗憾没有。 example.com 的重定向必须在 example.com 本身上处理。通常托管服务提供商允许使用 .htaccess。如果您可以重新托管然后将example.com 指向与abcd.com 相同的主机并使用我给定的规则。
    • 是的,这也是可能的,或者为 abcd.com 创建别名 (CNAME) 为 example.com 也是可能的,并且是更好的解决方案。
    • 感谢您的回答。检查您的代码后,我会将其标记为正确答案。再次感谢。
    • 成功了。已经编写了此代码的基础 .htaccess 。我根据您的回答更改了最后一行,并且有效。非常感谢。 RewriteCond %{HTTP_HOST} ^example\.com$ [OR] RewriteCond %{HTTP_HOST} ^www\.example\.com$ RewriteRule ^(\w+)/?$ "http\:\/\/www\.abcd\ .com\/example_com\/?value=$1" [R=301,L]
    猜你喜欢
    • 2016-01-03
    • 2014-10-09
    • 2012-08-13
    • 1970-01-01
    • 2021-12-19
    • 2012-12-03
    • 2013-04-01
    • 2015-01-20
    • 1970-01-01
    相关资源
    最近更新 更多