需要隐藏id在我的RewriteRule在.htaccess


Need to hide id in my RewriteRule in .htaccess

我已经在PHP中建立了一个自定义的企业目录,我正在使url人类可读。

我的URL请求获取业务子目录是:

http://.../new/business-subdirectory.php?cat=air-conditioners&cid=281

我在。htaccess中写了一个规则它给出了URL

http://.../business-directory/air-conditioners/281

因为我的MySQL查询ID工作,所以我必须通过ID (281)在漂亮的URL,但我不希望它在URL。

我只想让Pretty URL为:

http://.../business-directory/air-conditioners/
下面是我的。htaccess规则:
RewriteRule ^business-directory/(.*)/(.*)/?$ new/business-subdirectory.php?cat=$1&cid=$2

我有一个选择是使用子目录名而不是id…但我还是想知道我还有别的选择吗?

等待你的答案或建议:)

俄梅珥

根据URL中传递的ID执行查询。因此,如果不更改代码,您就无法实现您想要的效果。

最好的选择是在URL中设置slug值,该值与您的ID相同,您需要根据该值更改查询。

所以如果air-conditioners是有ID 281那么你需要改变你的查询获取数据基于类别段塞,而不是使用ID。