10

在我的本地环境中(Apache 2.2.26 上的 PHP 5.4.24)$_SERVER["SCRIPT_URL"]存在,但我读到这个变量并不总是存在,即使我无法准确找到它何时存在以及何时不存在。

我想知道这个变量需要什么才能可靠地存在。

4

2 回答 2

8

它仅在您启用 mod_rewrite 时可用:

http://httpd.apache.org/docs/2.0/rewrite/rewrite_intro.html#EnvVar

于 2014-06-26T11:19:27.420 回答
6

这个变量很大程度上取决于服务器的配置。

例如,当将 nginx 与 php5-fpm (fcgi) 一起使用时,您可以将变量作为 fpm_parameter 传递:

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;

scgi 有一个类似的配置。

中的全局变量有 3 种类型$_SERVER,有些取自客户端的请求头,不可靠,有些是 PHP/Webserver 设置的(例如REMOTE_ADDR),非常可靠,有些取决于您的配置,可靠取决于那个配置。

于 2014-06-26T11:30:04.017 回答