将网页 URL 重定向到另一个网站

Redirect a web page URL to another website

我有一个简单的 PHP 网站。我们称它为youtubex.com。我想以第 3 步所示的格式将 youtubex URLs(以第 2 步所示的格式)重定向到我的网站。在这里,我使用的是 YouTube,只是为了说明。

STEP1: https://www.youtube.com/watch?v=lj62iuaKAhU
STEP2: https://www.youtubex.com/watch?v=lj62iuaKAhU 
STEP3: https://www.youtubex.com/#url=https://www.youtube.com/watch?v=lj62iuaKAhU 

STEP1 显示任何所需 URL。 STEP2 显示与 STEP1 相同的 URL,域为 youtubex。 STEP3 显示最终需要的URL。我正在尝试将 STEP2 重定向到 STEP3。

我尝试在互联网上和 SO 上找到一些解决方案,但是,none 帮助。这里是 one.

这应该可以完成工作:

RedirectMatch 301 /watch$ https://www.youtubex.com/#url=https://www.youtube.com/watch

一个低效但完整的 php 解决方案可以使用 php 中的位置 header :

    $vid = $_GET['v']
    if($vid){  header("location:https://www.youtubex.com/#url=https://www.youtube.com/watch?v=$vid");
    }

顺便说一下,您无法获取 php 中井号后的文本,因为它没有发送到服务器。

javascript 可以通过检查 window.location.href 查看哈希是否不存在然后 get the v parameter in [=25= 来以更简洁的方式完成它而无需第二次重新加载] 然后使用 window.history.pushState({"html":response.html,"pageTitle":response.pageTitle},"", urlPath);

在不刷新页面的情况下更改 url

使用 php str_replace 和 header :

$step2_url = "https://www.youtubex.com/watch?v=lj62iuaKAhU";
$part2_url = str_replace("youtubex","youtube",$step2_url);//the output is : https://www.youtube.com/watch?v=lj62iuaKAhU
$step3_url = "https://www.youtubex.com/#url=".$part2_url; //the output is : https://www.youtubex.com/#url=https://www.youtube.com/watch?v=lj62iuaKAhU

现在你有了最终的 url ,只需重定向

header($step3_url);