如何在这种情况下进行URL屏蔽?

时间:2009-09-03 05:46:57

标签: php iframe url-rewriting frameset

我在1个网站上使用php,js,flash和mysql。

我想使用frameset(或者iframe)进行URL屏蔽。情形:

用户点击链接,使用此网址将他/她引导至我的网页:

www.domain.com/index.php?var1=string1&var2=string2

如何屏蔽网址,以便访问者只能看到www.domain.com/index.php,但实际上有一些变量。我需要变量,但我不希望访问者看到。如何对此进行URL屏蔽? (我不希望得到任何代码,我只想知道url masking方法的逻辑)

PS。我可能不会使用mod_rewrite,因为我不知道如何使用/编写代码。所以请用iframe / frameset方法回答:)

2 个答案:

答案 0 :(得分:0)

编辑:我想我误解了你的问题,所以这是另一种尝试:

www.yourdomain.com/index.php

<?php

session_start();

if (isset($_REQUEST['flashvar']) && ! isset($_SESSION['flashvar'])) {

    // Store any parameters received
    $_SESSION['flashvar'] = $_REQUEST['flashvar'];

    // Redirecting without query parameters
    header('Location: /index.php');
    exit;
}
?>
<HTML>
<HEAD></HEAD>
<BODY>
<?php
  echo '<embed src="player.swf?flashvar=',
       urlencode($_SESSION['flashvar']), '"/>';
?>
</BODY>
</HTML>

此示例将启动会话并将用户重定向到自身,而无需在查询字符串中存储任何参数。当然,它只有在用户启用了cookie时才有效。

答案 1 :(得分:0)

您可以将这些参数作为POST数据提交吗?

例如:

<form name="form1" action="index.php" method="POST">
    <input type="hidden" name="var1" value="value1" />
    <input type="hidden" name="var2" value="value2" />
</form>

<a href="#" onclick="document.form1.submit()">Click me</a>

当用户点击链接时,表单将提交给index.php,POST参数为var1和var2。用户永远不会在他们的URL中看到这些参数(尽管可以通过各种工具看到)。