简体   繁体   中英

mod rewrite, title slugs and htaccess

I have been taken in to provide some SEO guidance on a website which has been running since 2005. My problem is I want to use clean URLs.

The code that handles the URL is hidden away in some class file. And with over a few thousand lines of code its a struggle to rewrite it.

So I'm think, I have gone through all the products and created a slug for them as a field in the product table. Is it possible to do something like an intermediate file for .htaccess?

Some thing like

  1. /clean-slug-comes-in/
  2. .htaccess catches this and uses slug.php to find the relevant product ID for the slug.
  3. Then product.php?id=(ID.found.from.2) is loaded.

slug.php:

$id="ID.found.from.2";
include 'product.php';

您可以链接重写规则,但AFAIK无法在同一请求中执行两个脚本,并使用1中的输出作为第二个参数。

You could use a PHP script as rewrite map (see RewriteMap directive ). But that's quite difficult.

It would be easier if you send the slug to your slug.php script, fetch the ID from the database, set $_GET['id'] with that value, and then include the product.php script.

Another solution came to my mind:

Eeverything remains the same, but slug.php being included into every module, doing job of converting slugs into ids

Even better if you already have some config file being included into every module.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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