我正在尝试使用 htaccess 进行简单的 url 重写以转换:
example.com/test/?product_name=name-of product
自
example.com/test/name-of-product
为此,我正在使用:
RewriteEngine On
RewriteRule ^test/([A-Za-z0-9]+)/?$ test/?product_name=$1 [NC,L]
当product_name是数字 (example.com/test/200/) 时,这工作正常,但当product_name是字母或字母数字 (example.com/test/abc/) 时
不起作用我在使用字母或字母数字值时找不到页面
我在网上读到的所有内容似乎都告诉我这应该有效,但我错过了一些东西。 任何想法为什么不起作用? 或者也许是实现这一目标的最佳方法(制作一个漂亮的网址)?
其他信息。 我做了更多的研究,由于这是一个WordPress网站,/test/实际上也是一个变量,所以网站网址是
example.com/?page_id=611
我想我正在附加 product_name=name-of 产品,所以 url 可能看起来像(我认为)为
example.com/?page_id=611&product_name=name-of 产品
但page_id将永远相同(611)。 如果我的想法是正确的,那么htaccess中的重温是什么样子的?
谢谢你的帮助
射线
好的,我根据马里奥和 splash58 的问题做了更多的研究,结果发现这是一个 wordpress 问题,而不是mod_rewrite。 这可以使用wordpress重写API来解决。 详细信息和示例在wordpress网站上:
https://codex.wordpress.org/Rewrite_API/add_rewrite_rule