【问题标题】:htaccss and urlencoded variablehtaccess 和 urlencoded 变量
【发布时间】:2012-01-26 22:58:21
【问题描述】:

这是一个 URL 示例,当我单击网站上的按钮时它会被传递。

http://www.site.com/account/messages/compose/316/&sbj=Web+Programmer+%2F+Developer&event=836

这就是我的重写规则:

RewriteRule ^account/messages/compose/([0-9]+)/(.*)/([0-9]+)/?$ index.php?m=account_messages&p=compose&id=$1&sbj=$2&event=$3 [L]

id 和 event 总是数字,但 subj 可以是 url 编码的字符串 因为它现在不工作

【问题讨论】:

  • 不工作:它在做什么?它应该做什么?你还尝试了什么?

标签: .htaccess url mod-rewrite rewrite urlencode


【解决方案1】:

您的网址是否缺少?,即应该是http://www.site.com/account/messages/compose/316/?sbj=Web+Programmer+%2F+Developer&event=836

将以下内容添加到站点根目录中的.htaccess 文件中。

由于sbjevent 已经在查询字符串中,QSA 标志将自动传递它们,即重写

http://www.site.com/account/messages/compose/316/?sbj=Web+Programmer+%2F+Developer&event=836

相当于

http://www.site.com/index.php?m=account_messages&p=compose&id=316&sbj=Web+Programmer+%2‌​F+Developer&event=836

RewriteEngine on
RewriteBase /

RewriteRule ^account/messages/compose/([0-9]+)/$ index.php?m=account_messages&p=compose&id=$1 [L,QSA,NC]

【讨论】:

  • Nope not working 这是我的 url 在我的 seo url 关闭后的样子 www.site.com/index.php?m=account_messages&p=compose&id=316&sbj=Web+Programmer+%2F+Developer&event=836
  • @misulicus 您用什么 URL 进行了测试,结果如何?您的 .htaccess 中还有其他规则吗?这条规则是第一个吗?
  • 我在 htaccess 中有很多其他规则。它是一个 php 脚本,我只需要为脚本的这个特定部分添加一个规则。这里它发送一个额外的 2 个参数,$2 和 $3
  • @misulicus 你用什么 URL 进行了测试,结果如何?
猜你喜欢
  • 2017-07-24
  • 1970-01-01
  • 1970-01-01
  • 2011-10-19
  • 1970-01-01
  • 2013-12-05
  • 1970-01-01
  • 1970-01-01
  • 2012-07-11
相关资源
最近更新 更多