繁体   English   中英

用htaccess文件重写php中的url

[英]url rewriting by .htaccess files in php

我正在改写我的问题。 在下面,我将详细说明我想做的事情以及得到的结果是什么。 我希望这次很清楚。 我在这里有一个示例页面www.broadcast2world.com/samples.php。 我们在页面上看到的所有链接和数据都来自数据库。 现在,假设我们单击特定视频(如社交控制)的“更多信息”链接。 该视频的特定href触发为<a href="video.php?pid='.$id.'"> 它以http://www.broadcast2world.com/video.php?pid=66.格式通过网址传递其ID http://www.broadcast2world.com/video.php?pid=66.

我使用这个ID将其捕获到变量中

if(!isset($_GET['pid'])){
    $pageid='66';
}
else{
  $pageid=$_GET['pid'];  
} 

使用$ pageid变量,我运行了一个查询,最终为该特定视频准备了页面。

我的SEO家伙需要的是格式为www.broadcast2world.com/video/name-of-the-video的网址。

现在的问题是,如果我对mod_rewrite进行了修订,而Ben在下面对此进行了精彩的解释,我将无法确定如何将视频名称链接到其ID。 如上所述,我确定在为视频创建特定的网址时必须进行一些修改。 但是我真的不知道吗? 再次感谢您的大力支持

您必须根据标题搜索数据库而不是ID。

这是您将需要的。

.htaccess

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^videos/(.*)$ video.php?title=$1

链接生成

$title = "...";
$title = str_replace(" ", "-", $title); //add dashes on the link
echo "<a href="videos/$title">Click Me</a>";

您应该在videos表中添加一列,在其中存储适合放入URL name-of-the-video 您将需要UPDATE所有视频,并将每个视频的视频name-of-the-video设置为唯一值。 从那时起,按名称而不是ID提取视频将变得很简单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM