我最近更改了网站永久链接。 一些链接由谷歌索引,并且它们在搜索结果中。 但是由于我的永久链接的更改,现在谷歌搜索将它们发送到错误404页面,这真的很糟糕。
因此,我没有显示error404,而是希望将它们重定向到从链接中提取关键字的搜索页面,例如:
我原来的链接现在不存在:
http://www.mydomain.com/2013/01/some-title-of-my-site/
现在,如果是error404,则将其重写为搜索页面
http://www.mydomain.com/search?q=some+title+of+my+site
这是我的解决方案:它正常工作且非常棒(没有错误页面: - ))
使用htaccess将error404重定向到搜索页面,然后通过explode url设置搜索查询
$urlfrom404 = strtolower($_SERVER['REQUEST_URI']);
$tokens = explode('/', $urlfrom404);
$removeHyphen = strtr($tokens[sizeof($tokens)-2], '-', ' ');
答案 0 :(得分:0)
您不需要.htaccess
来执行重定向。相反,你可以这样做:
if ( num_rows_result ( $query ) == 0 )
header ( 'Location: /search?q=' . $_GET['post'] );
函数num_rows_result ( $query )
应返回与您的数据库匹配的行数,它应该是0
或1
而不是其他内容,因为您应该将其与主键。