SERVER["SCRIPT

In my local environment (PHP 5.4.24 on Apache 2.2.26) $_SERVER["SCRIPT_URL"] is present, but I read around that this variable is not always present, even though I couldn't find exactly when it is and when it isn't.

I'd like to know what is required for this variable to be reliably present.


It's only available when you have mod_rewrite enabled:

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


This variable strongly depends on the server's configuration.

When using nginx with php5-fpm (fcgi) for example, you'd pass the variable as fpm_parameter:

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;

There is a similiar configuration for scgi.

There are 3 types of global variables in $_SERVER , some are taken from the client's request header and are not reliable, some are set by PHP/Webserver (for example REMOTE_ADDR ) and are very reliable, and some depend on your configuration which can be reliable depending on that configuration.

链接地址: http://www.djcxy.com/p/42272.html

上一篇: 如何在PHP中获取当前页面的URL

下一篇: SERVER [“SCRIPT