如何将没有变量的url重写为包含变量的url

时间:2015-04-03 20:42:34

标签: php apache .htaccess mod-rewrite url-rewriting

我是新手,所以我甚至不确定这是否可行。

我有这个网址:http://my.domain.com/index.php?CID=2

我想输入http://my.domain.com/meet-our-team并显示上面的页面而不显示真实的网址(index.php?CID = 2)。

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

RewriteEngine  on
RewriteRule ^meet-our-team$ index.php?CID=2 [NC,L]

这似乎会将我重定向到我的主页。我怎么能做这个简单的重写?

谢谢你, 路加

2 个答案:

答案 0 :(得分:0)

我发现了两件事:

答案 1 :(得分:0)

@syntrax - 谢谢,我也找到了这些和其他类似的帖子,但由于我不相信我按照预期的方式使用重写规则,因此无法得到很多帮助。

我想要做的是创建任何SEF网址(例如 example.com/this-is-my-sef-page )并让它指向一个通常类似于<的网址强> example.com/index.php?catid=1$id=5

看起来我能做的就是重写原始网址中的内容,所以我需要使用这样的方法:http://moz.com/ugc/using-mod-rewrite-to-convert-dynamic-urls-to-seo-friendly-urls

该方法并没有为我创建足够干净的sef网址,因此我的解决方案是将有效的网址重定向列表全部指向我的index.php页面:

RewriteRule ^my-sef-url$ index.php
RewriteRule ^my-other-sef-url$ index.php

index.php根据sef映射表检查url,并根据数据库中的sef映射显示相应的页面。这比创建复杂的.htaccess规则容易得多,并且让我在我的sef网址上有更多的灵活性。