通过子域通配符重定向传递变量?
我正在开发一个新脚本,基本上,当有人在我的网站上搜索某些内容时,它通常会转到这里:
http://domain.com/index.php?q=apples
到
我已经在 PHP 和 htaccess 中完美地完成了这项工作,但是我遇到的问题是之后在新的子域页面上使用原始关键字。
现在我可以使用 parse_url 从 url 中获取关键字,但我的脚本也会过滤掉潜在的问题,例如:
public function sanitise($v, $separator = '-')
{
return trim(
preg_replace('#[^\w\-]+#', $separator, $v),
$separator
);
}
因此,如果有人搜索上网本 v1.2
新的子域将是:
http://netbook-v1-2.domain.com
现在我可以取出关键字,但它带有破折号,而不是原始的。我正在寻找一种方法来通过 301 重定向发送原始关键字。
谢谢!
I am working on a new script that basically instead when somebody searches for something on my website how it normally goes to here:
http://domain.com/index.php?q=apples
to
I have made this work perfectly in PHP as well as htaccess but the problem I am having is using the original keyword afterwards on the new subdomain page.
Right now I can use parse_url to get the keyword out of the url but my script also filters out potential problems like:
public function sanitise($v, $separator = '-')
{
return trim(
preg_replace('#[^\w\-]+#', $separator, $v),
$separator
);
}
So if somebody searches for netbook v1.2
The new subdomain would be:
http://netbook-v1-2.domain.com
Now I can take the keyword out but it's with the dashes and not original. I am looking for a way to send over the original keyword with the 301 redirect as well.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以在他们访问新子域时将连字符替换为空格,或者由于您位于同一顶级域,因此您可以在重定向它们时仅对关键字进行 cookie 处理:
You can either just replace the hyphen with spaces when they visit the new subdomain or, since you're on the same top-level domain, you can just cookie the keyword when redirecting them:
看看这个答案: https://stackoverflow.com/a/358334/992437
看看是否可以使用 POST或获取已经存在的数据。如果是这样,那可能是您最好的选择。
Look at this answer: https://stackoverflow.com/a/358334/992437
And see if you can use the POST or GET data that's already there. If so, that might be your best bet.