【问题标题】:URL Rewrite like wordpress像 wordpress 一样的 URL 重写
【发布时间】:2011-09-19 13:16:51
【问题描述】:

我已经重写了一个网址:

http://www.abc.com/page.php?id=3

到:

http://www.abc.com/page/3/

现在的问题是如何将 id 值“3”变成aboutus? (3代表mysql数据库中的'aboutus')......我们如何检索它并使其成为

http://www.abc.com/page/aboutus/

类似于 wordpress 网址。

请指导我.. 非常感谢。

【问题讨论】:

标签: wordpress .htaccess url rewrite permalinks


【解决方案1】:

您可以将 pageUrl 添加到您的数据库中

然后在您的网址中传递关于我们:

http://www.abc.com/page/aboutus/

你可以这样设置:

$sql = 'select * from tbl_pages where id= 3';

...other bits....

$pageUrl = stripslashes( $row['pageUrl'] );

$url = 'http://website.com/page/' . $pageUrl . '/';

在 page.php 上,您可以查询 idpageUrl 字段

$id = $_GET['id'];
$sql = 'select * from tbl_pages where pageUrl = "'.$id."';

要将您的旧网址重定向到您的新网址,您可能会在您的 Htaccess 中使用类似这样的内容:

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$
RewriteRule ^page.php$ page/%1/? [R=301,L]

要将这个:page.php?id=3 转换为 page/aboutus/,尽管您可能必须创建一个使用 id 的登录页面,然后从数据库中获取 url 并转发到该页面。

你的 Php 登陆页面看起来像:

$sql = 'select * from tbl_pages where id= 3';

...other bits....

$pageUrl = stripslashes( $row['pageUrl'] );

header("HTTP/1.0 301 Moved Permanently");
header("Location: page/" . $pageUrl . "/");
exit;

【讨论】:

  • 你能写一点例子来解释一下吗..我不太清楚你的话..非常抱歉..谢谢你的耐心我的朋友。
  • 我的朋友在继续上面的示例代码之前遇到了一个问题,我可以知道如何关闭我的旧网址吗?我的意思是人们只能访问新的网址。
  • 现在两个url也可以输入了吧?我希望新的url只能输入,如果我输入旧的url,我会自动转到新的url。
  • 当我转到旧网址时,它会将我发送到此网址...abc.com/C:/wamp/www/abc.com/page/6
猜你喜欢
  • 2016-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-17
  • 2012-10-25
  • 2012-10-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多