【问题标题】:Rewrite rule .php to .swf NGINX将规则 .php 重写为 .swf NGINX
【发布时间】:2016-06-20 01:06:51
【问题描述】:

我正在尝试使用 NGINX 制定重写规则,将我的文件 serveClient.php 重写为 serveClient.swf
另外,我想传递每个 $_GET 参数。
例如访问 serveClient.swf?test123 就像我访问 serveClient.php?test123
访问 serveClient.swf 一样比如我去serveClient.php

这是我尝试过的,但出现 404 错误

location test/ {
    rewrite serveClient.swf?^(.*)$ serveClient.php?$1;
}

有什么办法吗?

【问题讨论】:

    标签: php mod-rewrite nginx


    【解决方案1】:

    ? 及其后面的任何内容(查询字符串)不被视为rewrite 指令的正则表达式的一部分。

    但是,默认情况下(除非您附加 ?),rewrite 会将现有查询字符串附加到重写的 URI。所以这应该足够了:

    rewrite ^(.*)/serveClient\.swf$ $1/serveClient.php;
    

    详情请见this

    此外,前缀位置应以/ 开头,例如:

    location /test { ... }
    location /test/ { ... }
    

    详情请见this

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-30
      • 2016-08-09
      • 1970-01-01
      • 1970-01-01
      • 2014-11-17
      • 2016-06-18
      • 2018-03-28
      相关资源
      最近更新 更多