代码之家  ›  专栏  ›  技术社区  ›  sergtk

当禁用apache mod_rewrite模块时,某些函数重写PHP规则

  •  1
  • sergtk  · 技术社区  · 14 年前

    我运行以下URL:

    http://localsite/index.php/foo/bar
    

    执行index.php并输出变量:

    $_SERVER[SCRIPT_FILENAME] = E:/path/to/file/index.php
    

    禁用apache中的mod_rewrite。

    谁改写了规则?
    或者发生了什么?

    如何找到index.php?为什么阿帕奇决定运行它?

    我的配置: Windows Vista、Apache Apache/2.2.14(win32)php/5.3.1(带php模块)。

    (事实上,问题是规则实际上是在mod重写之前重写的——这是启用mod重写的时候。这导致了 RewriteCond %{REQUEST_FILENAME} !-f 总是错误的,因为 /foo/bar 在之前修剪 RewriteCond )

    2 回复  |  直到 14 年前
        1
  •  3
  •   Pekka    14 年前

    AcceptPathInfo

    http://localsite/index.php
    

    /foo/bar
    

    $_SERVER["PATH_INFO"]

    mod_rewrite .php

        2
  •  0
  •   Matthew Smith    14 年前