如何重定向旧修改目录的 URL

如何重定向旧修改目录的 URL

我有一个分类广告网站。以前我经常修改URLs 以使其更合适,但旧的URLs 仍然显示在 Google 索引和浏览器历史记录/书签中。

有什么方法可以绕过或将旧URLs 重定向到新 s 吗?我尝试使用.htaccess规则,但无法获得我想要的结果。

例如:

  1. 修改前
  2. 修改后

目前的情况是,两个 URL 都有效,这对搜索引擎优化 (SEO) 不利。我需要URL将第一个 URL 重定向到第二个 URL URL

这正是我的.htaccess文件中的内容:

AddHandler application/x-httpd-php5s .php
ErrorDocument 404 /content/404.php
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^vehicles-cars/?(.*),,,,,,,,,,,,,,,  

答案1

您正在运行什么网络服务器?请在您的问题中编辑该内容。

假设它是 Apache 并且您已打开 mod_rewrite,请在主机根目录中的 .htaccess 文件中添加以下行。

RewriteRule ^vehicles-cars/?(.*) http://adsbuz.com/vehicles-cars-for-sale/$1

它应该能起到作用。

答案2

您需要从旧 URL 进行 301 重定向。鉴于两个都这些 URL 目前都可以使用,我不会修改你的重写规则,因为我认为这会比它需要的更复杂,因为你需要知道哪个是当前 URL,哪个是旧 URL在重写级别,看起来你的应用程序不是为此设计的。

我的做法是,当 PHP 开始执行时,它需要做的第一件事是检查请求的当前 URL ( content-location)。将该字符串中的内容与页面数据库中的内容进行比较。

如果两个 URL 匹配,则正常加载页面。否则,执行301 标头重定向到新的 URL。

答案3

相关内容