【问题标题】:About RewriteRule and .htaccess关于 RewriteRule 和 .htaccess
【发布时间】:2017-10-01 22:10:36
【问题描述】:

我有一个问题:

我想重写这个:

example.com/pages/?page=start

example.com/pages/?page=news

到:

example.com/start

example.com/news

所以我希望子页面中的 GET 显示为主页,有人知道怎么做吗?

【问题讨论】:

  • 您想要重写还是重定向或两者兼而有之?用户应该看到什么,服务器理解的 URL 是什么?

标签: php html .htaccess url


【解决方案1】:

如果您希望用户输入 example.com/startexample.com/news 之类的内容,但服务器应像 example.com/pages/?page=startexample.com/pages/?page=news 一样处理它,请按如下方式完成:

RewriteEngine On    
RewriteRule ^/?([^/]+) /pages/?page=$1 [QSA,L]

这里要小心,因为example.com/news/first-news 也会被重写为example.com/pages/?page=news 并且/first-news 会丢失!

【讨论】:

  • 感谢您的快速回答,但在此示例中您将如何处理才能不丢失“/first-news”?
  • 你想有额外的查询参数(例如/pages/?page=news&subpage=first-news)还是只有一个参数(例如/pages/?page=news/first-news )?如果你想有额外的查询参数有多少,因为 example.com/news/first-news/sub-page/sub-sub-page/?
  • 请提供额外参数,以便我可以在单独的 _GET 变量中使用它
猜你喜欢
  • 2012-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-04
  • 2012-12-29
  • 1970-01-01
相关资源
最近更新 更多