使用 mod_rewrite 从 GET 表单中清理 url
我有一个包含 2 个字段(类别和关键字)的搜索表单。根据用户输入的网址,看起来像这样:
search.php?cat=&search=&agree=agree_terms&go=Go
我对其他页面有一些 re_write 规则,这些规则很好,但我坚持如何处理这个搜索表单,
我遇到了一个解决方案,建议将 mod_rewrite 与 php 元刷新相结合附加页。我设法让它工作,但我想到这可能不是一个搜索引擎友好的解决方案。
有没有办法可以仅使用 mod_rewrite 规则从 GET 表单中获取干净的 url?
I have a search form with 2 fields (category and keywords). Depending on the user input urls looking something like:
search.php?cat=&search=&agree=agree_terms&go=Go
I have some re_write rules for other pages which are fine but I'm stuck on how to deal with this search form
I came across a solution that suggested combining mod_rewrite with a php meta refresh from an additional page. I managed to get this to work but it occurred to me that this may not be a search engine friendly solution.
Is there a way I can have clean urls from a GET form with mod_rewrite rules only?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您有固定数量的参数,您可以尝试以下操作:(
等等)
这会将
/query/arg_1/value_1/arg_n/value_n/
转换为/search.php? arg_1=value_1&arg_n=value_n
,但您必须确保值被正确转义。链接这样的“获取”URL 而不是使用默认参数或隐藏字段的实际动机超出了我的范围。
If you have a fixed number of arguments, you can try something like:
(and so on)
This will transform
/query/arg_1/value_1/arg_n/value_n/
into/search.php?arg_1=value_1&arg_n=value_n
, but you have to make sure values are properly escaped.The practical motivation to link a "get" URL like this instead of using default parameters or hidden fields is beyond me.