如何将动态URL重写为SEO友好URL?

时间:2011-12-08 08:33:06

标签: php apache

我尝试了在此网站中看到的所有内容,以便将动态网址重写为SEO友好网址。

是否可能是因为我在localhost中使用它?

我试试这个,但也不起作用:

RewriteCond %{THE_REQUEST} ^GET\ /index\.php/?([^ ]*)
RewriteRule ^index\.php/?(.*) /$1 [R,L]
RewriteCond $0 !^index\.php($|/)
RewriteRule .* index.php/$0 [L]

我也指的是在线动态网址生成器,但它也不起作用。请帮忙。

我想重写这几个网址:

index.php?p=home
index.php?p=about me
index.php?p=contact me

1 个答案:

答案 0 :(得分:3)

你可以使用这个:

RewriteEngine on

RewriteBase /

 # Rewrite URLs of the form 'x' to the form 'index.php?q=x'.

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?q=$1

然后在index.php页面上,所有变量都可以通过$ _GET ['q']访问。如果你进一步使用$ location = array_filter(explode('/',$ _ GET ['q']));然后$ location将是一个包含每个目录的数组,因此www.mysite.com/firstdir/seconddir/thirddir将$ location [0]定义为'firstdir',将$ location [1]定义为'seconddir',依此类推。然后,您可以将这些与数据库中的url_aliases进行比较,以确定要显示的内容/模板。

这对我来说也适用于localhost,除了我将基本网址部分从“/”更改为“/ mycurrentconstructionsite /”

希望有所帮助!