编辑特定网站上的网址

时间:2015-07-28 02:06:45

标签: javascript html

我只是想知道是否有人可以用一些知识来启发我。 我想要做的是"重叠"一个网址。例如:

  

website.com/index.php?page=something&id=的 5432

成为(从第一个网址获取id):

  

website.com/src/popup.php?page=something&id=的 5432

任何快速简单的方法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您似乎正在寻找某种重定向。

我不确定您是否考虑在此处使用完全javascript,因为您已经展示了PHP文件扩展名。

<强>的Javascript

对于仅限Javascript的解决方案,您可以尝试以下方法:

//Parameter function thanks to https://stackoverflow.com/a/901144/917035
function getParameterByName(name) {
    name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
        results = regex.exec(location.search);
    return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}

//Build the new location string.
var page = getParameterByName("page");
var id = getParameterByName("id");
var locationString = 'http://website.com/src/popup.page?page=' + page + '&id=' + id;
//Redirect
window.location = locationString;

或者你可以用PHP实现同样的目的:

<强> PHP

<?php 
    $page = $_GET['something'];
    $id = $_GET['id'];
    $locationString = 'website.com/src/popup.page?page=' . $page . '&id=' . $id;
    header('Location: ' . $locationString);
?>

哪个会接受您的网址查询中的参数(pageid),然后将其传递到header请求中以将用户重定向。

如果您正在寻找所有页面的长期解决方案,则可以选择编辑.htaccess文件的方式,类似于{{3使用RewriteRule来保留参数。