Php 如何从URL中删除额外信息

Php 如何从URL中删除额外信息,php,linkedin,Php,Linkedin,我注意到,当我在LinkedIn更新中添加链接时,LinkedIn觉得有必要添加“#!”到URL的末尾。当我试图炫耀我公司安装的日历时,这似乎是个问题 所以我想我只需要链接到一个PHP文件并从那里重定向到日历。但即使在代码中指定了绝对URL,“#!”仍然附加到URL末尾的末尾 我用于重定向的代码: <?php $url = "http://calendar.example.com"; header( 'location:'.$url ) ; ?> 还是送我去

我注意到,当我在LinkedIn更新中添加链接时,LinkedIn觉得有必要添加“#!”到URL的末尾。当我试图炫耀我公司安装的日历时,这似乎是个问题

所以我想我只需要链接到一个PHP文件并从那里重定向到日历。但即使在代码中指定了绝对URL,“#!”仍然附加到URL末尾的末尾

我用于重定向的代码:

<?php
     $url = "http://calendar.example.com";
     header( 'location:'.$url ) ;
?>

还是送我去http://calendar.exmpale.com/#!


如何说服代码删除该“#!”这会引起问题吗?另外,LinkedIn为什么要这样做?

哈希是唯一的客户端,您不能使用上面提到的
mod_rewrite
来删除它。我会使用javascript

window.location.href.substr(0, window.location.href.indexOf('#'))

你需要使用
mod_rewrite
来摆脱它。我对LinkedIn不太熟悉,但你能在不创建
标记的情况下提供URL吗?也许只是将URL作为纯文本发布,以便用户必须复制+粘贴?
#
听起来像是一个不允许用户盲目点击链接的安全功能。顺便说一句,我不明白为什么它会破坏你的重定向脚本?去!不会导致他们的网站崩溃,我的个人网站可以处理。软件使用URL中的信息来确定日历上要显示的事件。calendar.example.com/#!event_2013_9_4_1_9_1_Some+事件就散列而言,我知道一个事实,当尝试共享包含锚(又名散列标签)的链接时,Facebook会将其删除,这就是为什么我认为OP和LinkedIn的情况相同。