duanruinong0619 2018-10-21 12:29
浏览 94
已采纳

.htaccess mod_rewrite规则匹配干净的URL以及其他自定义参数

This is a .htaccess file I found for my REST API that rewrites URLs in this manner: rest.php/a/b/c/... -> rest.php?url=a/b/c/...

RewriteEngine On
RewriteRule ^(.*)$ rest.php?url=$1 [L,NC,NE]

I've been trying to modify this code to allow for additional GET parameters as in the current form it just ignores them and PHP only sees the 'url'. How could this be done?

I want something like this: rest.php/a/b/c/...?filter=word -> rest.php?url=a/b/c/...&filter=word

  • 写回答

1条回答 默认 最新

  • douyu7210 2018-10-21 19:28
    关注

    You need the flag QSA (Query String Append)

    RewriteEngine On
    RewriteRule ^(.*)$ output.php?url=$1 [QSA,NC,NE]
    

    Gives me for the url

    http://localhost/rest.php/a/b/c/?var2=val2
    

    the following GET parameters

    array(2) { ["url"]=> string(15) "rest.php/a/b/c/" ["var2"]=> string(4) "val2" } 
    

    For more info see Rewrite Flag QSA

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 关于#html5#的问题:H5页面用户手机返回的时候跳转到指定页面例如(语言-javascript)
  • ¥15 无法使用此凭据登录,因为你的域不可用,如何解决?(标签-Windows)
  • ¥15 yolov9的训练时间
  • ¥15 二叉树遍历没有报错但无法正常运行
  • ¥15 在linux系统下vscode运行robocup3d上场球员报错
  • ¥15 Python语言实验
  • ¥15 SAP HANA SQL 增加合计行
  • ¥20 用C#语言解决一个英文打字练习器,有偿
  • ¥15 srs-sip外部服务 webrtc支持H265格式
  • ¥15 在使用abaqus软件中,继承到assembly里的surfaces怎么使用python批量调动