将用户重定向到长URL

时间:2013-11-12 05:01:50

标签: php codeigniter url-rewriting url-routing url-redirection

我有一个应用程序,其中重写后的URL就像这样

  

http://www.domain.com/product/seller/product_id

示例链接

  

http://storeiown.com/product/kitchenking/92013

这没关系,但我需要将产品的标题包含在网址

  

http://storeiown.com/product/a-very-nice-electric-cooker-by-kitchenking/92013

我也实现了这一切,一切都很好。

现在,我希望所有不包含标题的网址都重定向到此标题。 例如,如果用户从没有标题的网址登陆,则应将其重定向到页面版本,并在网址中包含标题的网址。

我如何实现这一目标。有关信息的其他信息,我在应用程序中使用CodeIgniter,如果这样可以更容易。

2 个答案:

答案 0 :(得分:0)

你可以这样做,我用。在上一页中,在顶部键入: -

<?php
session_start();
$_SESSION['mainpass']= '0';
?>

在下一页中,在页面顶部对此进行编码: -

<?php
session_start;
if(isset($_SESSION['mainpass'])) {
//run the current page
}else{
header("location: www.domain.com");
}
?>

答案 1 :(得分:0)

如果您使用的是codeigniter,可以尝试下面的内容。

$seg3 = $this->uri->segment(3);
if(is_numeric($seg3)){
//The user has come without the header because the third segment is numeric thus probably using the product id. 
//Therefore, redirect again to the proper link after getting the heading from your db
} else {
// do nothing
// the seg3 is not numeric means it probably came through normal preferred way
}

并且为了使用

$this->uri->segment(3);

你需要

  • 自动加载网址助手

  • 在需要时手动加载