jQuery / Javascript - 动态地将文本插入URL

时间:2012-11-16 15:43:56

标签: php javascript jquery url-rewriting

我写了一些PHP,用于检测用户是否使用移动设备或计算机访问我的博文。

基本上,如果用户使用移动设备访问我的博文,我需要一个动态编辑URL的脚本。

例如,我的博客帖子网址如下:

  

http://www.example.com/blog/blog-post-1/
  http://www.example.com/blog/welcome-to-my-blog/
  http://www.example.com/blog/another-blog-post/

用户应动态重定向到:

  

http://www.example.com/m/blog/blog-post-1/
  http://www.example.com/m/blog/welcome-to-my-blog/
  http://www.example.com/m/blog/another-blog-post/

我也有使用PHP进行设备检测,所以我只需要在PHP条件中插入脚本。

有什么想法吗?

4 个答案:

答案 0 :(得分:2)

尝试:

if ($mobile) {
    header("Location: http://".$_SERVER["HTTP_HOST"]."/m".$_SERVER["REQUEST_URI"]);
}

答案 1 :(得分:0)

此.htaccess代码段可能有助于完成您要执行的操作:

此重写涵盖了大多数移动设备(误报率很低)。检测到移动设备时,会将其重定向到/ m /.

http://snipplr.com/view/44741/

答案 2 :(得分:0)

如果您已经在使用PHP进行设备检测,那么应该这样做:

header("Location: /m{$_SERVER['REQUEST_URI']}");
exit;

它采用当前路径并以"/m"为前缀来形成移动路径。

使用JavaScript进行重定向会排除某些移动设备,因此这可能不是最佳选择。

答案 3 :(得分:0)

这应该这样做:

$服务器

<?php
echo $_SERVER['HTTP_USER_AGENT'];
?>

user_agent.php:

<?php
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");

if ($iphone || $android || $palmpre || $ipod || $berry == true)
{
header('Location: http://mobile.site.com/');
//OR
echo "<script>window.location='http://mobile.site.com'</script>";
}
?>

的index.php:

<?php
include('user_agent.php'); // Redirecting http://mobile.site.info
// site.com data
?>

来自this网站的内容。