我一直在寻找具体的例子来回答我关于漂亮网址的问题。不幸的是,没有运气。如果有人能帮助我指出正确的方向,那就太好了。
目前我的网址是: https://mywebsite.com/offers/details/?id=1234
理想情况下,我希望它只包含报价的标题: https://mywebsite.com/offers/details/truffle-hunter
但是 - 我很确定我需要包含 id,以便可以查询报价的详细信息(由于可能重复,无法按名称查询),所以我认为: https://mywebsite.com/offers/details/1234/truffle-hunter
问题是这实际上是如何运作的?我是否执行 mod_rewrite 以便任何包含“/offers/details/”的 URL 重定向到“details”文件夹内的索引页面?我该如何做到这一点并传递 id“1234”?假设从那里我会使用 $_GET('id') 来获取该值?
这是我第一次使用 mod_rewrite,对 .htaccess 有一点经验,并且对正则表达式有一个超级基本的了解 - 所以请温柔一点。感谢您的帮助。
您必须在
.htaccess
文件中使用重写。使用以下代码创建 .htaccess 文件 .htaccess 文件需要放置在 mywebsite.com 的根目录下
示例1:
https://mywebsite.com/offers/details-id-1234.htm
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^offers/details-id-(.*).htm$ /offers/details.php?id=$1
示例2:
https://mywebsite.com/offers/details/id/1234/
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^offers/details/id/(.*) /offers/details.php?id=$1
RewriteRule ^offers/details/id/(.*)/ /offers/details.php?id=$1