所以我想到了一种在将页面下载到客户端时从url中删除参数的方法,并且在get参数的每个不同值中响应不同。
让我为你更清楚。说我有这个网址: www.abc.com/?q=jsdfnjns 。理想情况下,我正在考虑使用goo.gl缩短此URL,然后将其发送给客户。当客户点击它时,它会自动转到 www.abc.com 清理网址,并使用q的值为客户端设置cookie。我之前在许多会员链接中看到过它,除了初始网址没有获取参数但值实际上是一个子文件夹,例如 www.abc.com/jsdfnjns
那么实际获取get参数的值并使用php操作它的方法是什么,在没有用户注意的情况下从url中删除,或者在将参数作为子文件夹给出时设置cookie。我怀疑它必须是一些htaccess规则和php技巧,但找不到办法。
通过给定网址 www.abc.com/jsdfnjns ,如何立即重定向到 www.abc.com 并且在apache或用户cookie中理想地将服务器端保存为 jsdfnjns ? 有没有办法让它也与实际的get参数一起发生?
原理图:
www.abc.com/jsdfnjns 将其转换为 - > goo.gl/sjbjsb - >点击后,用户将转到 www.abc.com ,但不知何故,我得到了 jsdfnjns ,并在主页面中做出了不同的响应。
希望我的问题得到明确定义,任何想法都将受到赞赏。 感谢。
答案 0 :(得分:1)
首先你需要设置.htaccess文件
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?q=$1 [QSA,L]
</IfModule>
index.php代码:
session_start();
if(isset($_REQUEST['q'])) {
$_SESSION['q'] = $_REQUEST['q'];
header('Location:index.php');
die();
}
else{
if(isset($_SESSION['q'])) $q = $_SESSION['q'];
else $q = null;
//YOUR CODE
var_dump($q);
}