首页
学习
活动
专区
圈层
工具
发布

php之$_SERVER解析

$_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在的文档根目录 $_SERVER['HTTP_ACCEPT'] //当前请求的 Accept: 头部的内容。...$_SERVER['SERVER_ADMIN'] #管理员信息 $_SERVER['SERVER_PORT'] #服务器所使用的端口 $_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串...$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。 $_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。...$_SERVER['PHP_AUTH_USER'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。...$_SERVER['PHP_AUTH_PW'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。

97220
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Apache的DOCUMENT_ROOT坑,第二次踩

    某系统过两天要交付,我这边在测试各种情况,在测试把系统部署到子目录的时候发现跳转有问题,然后追查到一个自己写的url函数,之前我写的这两个函数用于获取基于web根目录的子目录信息和url。...坑就在于服务器配置,关于DOCUMENT_ROOT,参看这里,官方文档说DocumentRoot的设定应该不要有末尾斜杠,但是很多wamp傻瓜包(已知wamp、phpnow)的虚拟主机设置都会有末尾斜杠...,在计算basedir的时候我用dirname($_SERVER[‘SCRIPT_FILENAME’]) 减去$_SERVER[‘DOCUMENT_ROOT’] 来获取相对web根目录的子目录路径,如果...DocumentRoot配置值末尾有斜杠,会直接导致$_SERVER[‘DOCUMENT_ROOT’]末尾有斜杠,然后导致相减之后得到的子目录路径没有前面的斜杠。

    83130

    PHP中$_SERVER详解参数&说明

    $_SERVER['argc'] #包含传递给程序的命令行参数的个数(如果运行在命令行模式)。 $_SERVER['GATEWAY_INTERFACE'] #服务器使用的 CGI 规范的版本。...$_SERVER['QUERY_STRING'] #查询(query)的字符串。 $_SERVER['DOCUMENT_ROOT'] #当前运行脚本所在的文档根目录。在服务器配置文件中定义。...$_SERVER['REMOTE_HOST'] #正在浏览当前页面用户的主机名。 $_SERVER['REMOTE_PORT'] #用户连接到服务器时所使用的端口。...$_SERVER['SERVER_ADMIN'] #管理员信息 $_SERVER['SERVER_PORT'] #服务器所使用的端口 $_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串...$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。 $_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。

    2.2K40

    P001PHP开发之PHP实现取得HTTP请求的原文相关信息

    $_SERVER['GATEWAY_INTERFACE'] #服务器使用的 CGI 规范的版本。例如,“CGI/1.1”。...$_SERVER['QUERY_STRING'] #查询(query)的字符串。 $_SERVER['DOCUMENT_ROOT'] #当前运行脚本所在的文档根目录。在服务器配置文件中定义。...$_SERVER['REMOTE_HOST'] #正在浏览当前页面用户的主机名。 $_SERVER['REMOTE_PORT'] #用户连接到服务器时所使用的端口。...$_SERVER['SERVER_ADMIN'] #管理员信息 $_SERVER['SERVER_PORT'] #服务器所使用的端口 $_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串...$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。 $_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。

    71920

    PHP中getenv()函数

    如果该脚本运行在一个虚拟主机上,该名称是由那个虚拟主机所设置的值决定。 “SERVER_SOFTWARE” 服务器标识的字串,在响应请求时的头信息中给出。...“DOCUMENT_ROOT” 当前运行脚本所在的文档根目录。在服务器配置文件中定义。 “HTTP_ACCEPT” 当前请求的Accept: 头信息的内容。...“SERVER_ADMIN” 该值指明了Apache 服务器配置文件中的SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值。...“SERVER_PORT” 服务器所使用的端口。默认为“80”。如果使用SSL 安全连接,则这个值为用户设置的HTTP 端口。...“SERVER_SIGNATURE” 包含服务器版本和虚拟主机名的字符串。 “PATH_TRANSLATED” 当前脚本所在文件系统(不是文档根目录)的基本路径。

    2.1K80

    PHP常用$_SERVER解析及和的区别

    的 httpd.conf 中设置的,改成 _SERVER["HTTP_HOST"] 后就好了,下面整理下 这两个方法的区别: 简单的来说,HTTP_HOST 是变化的,而 SERVER_NAME 只有一个...["HTTP_HOST"] 输出 www.w3h5.com _SERVER["SERVER_NAME"] 输出 w3h5.com 所以,在实际程序中,应尽量使用 _SERVER["HTTP_HOST"]...$_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在的文档根目录  $_SERVER['HTTP_ACCEPT'] //当前请求的 Accept: 头部的内容。 ...$_SERVER['SERVER_ADMIN'] #管理员信息  $_SERVER['SERVER_PORT'] #服务器所使用的端口  $_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串...$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。  $_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。

    5.5K10

    基于 Nginx + PHP-FPM 作为 HTTP 服务器

    0、引言 PHP 对 HTTP 请求响应支持非常友好,可以通过 PHP 预定义的超全局变量获取 HTTP 请求数据: $_SERVER:获取 HTTP 服务器数据 $_GET:获取 URL 查询字符串中的参数...在 PHP 代码中,可以通过 $_SERVER 获取所有服务器信息,包括 HTTP 请求头、PHP 脚本、服务器环境和系统环境变量等,详细细节可以参考 PHP 官方文档:https://www.php.net...php echo ''; var_dump($_SERVER); 2、使用 PHP 内置 HTTP 服务器 接下来在 php_learning/http 目录下启动 PHP 内置服务器: ?...配置 Nginx 虚拟主机 在 laradock 项目根目录下的 nginx/sites 目录下新增一个 php.conf 配置文件配置一个虚拟主机: server { listen 80;...配置目录映射 虚拟主机配置中应用根目录设置的是 /var/www/http,/var/www 是 workspace 容器中 Web 应用中的根目录,所以我们需要将宿主机中的 php_learning

    1.3K10

    配置Nginx目录别名Alias支持PHP解析

    关于Nginx配置基础知识,PHP用FastCGI,在Apache里,有alias,比较方便,在Nginx下没有虚拟目录概念的,是用location配合alias使用,但使用alias标签的目录块中不能使用...一、例子说明: 1)我的环境是:web根目录在 /var/www/html/中,但是我要加上一个类似于apache的别名目录 /bbs ,此目录不在 web根目录中。...我的配置文件如下: server {     listen      80;     server_name    localhost;     default_type text/plain;    ...$fastcgi_script_name;         include        fastcgi_params;     } 也就是用变量名 $document_root 代替 /opt; 其实每个...location {}中的 $document_root 都是局部变量,都是在本段配置 root指令指定的路径。

    1.9K20

    nginx服务器配置虚拟主机

    在vhosts.conf下新增一个server表示一个虚拟主机,配置虚拟主机三种方式(端口号,域名,ip地址)     配置代码如下: ①以端口号为基础创建虚拟主机 #80端口号下虚拟主机 server... {         listen       80;//监听端口         server_name  localhost ;//绑定域名         root   "D:\www";//根目录...;             include        fastcgi_params;         } } #8080端口号虚拟主机 server {         listen       8080...;             include        fastcgi_params;         } } ②以域名配置不同虚拟主机 #使用 www.test.com访问web1虚拟主机 server...;             include        fastcgi_params;         } } #使用pic.test.com访问web2虚拟主机 server {         listen

    4.8K20

    Http的headers最详解释

    “protocol” 包含有 “HTTP” 和版本号, 现代浏览器都会使用1.1.   剩下的部分每行都是一个“Name:Value”对。它们包含了各式各样关于请求和你浏览器的信息。...当你发送了一个HEAD请求,那就意味着你只对HTTP头部感兴趣,而不是文档本身。   这个方法可以让浏览器判断页面是否被修改过,从而控制缓存。也可判断所请求的文档是否存在。   ...$_SERVER['QUERY_STRING'] #查询(query)的字符串。 $_SERVER['DOCUMENT_ROOT'] #当前 运行脚本所在的文档根目录。在服务器配置文件中定义。...虚拟主机名的字符串。...$_SERVER['PATH_TRANSLATED'] #当前 脚本所在文件系统(不是文档根目录)的基本路径。 $_SERVER['SCRIPT_NAME'] #包含当前 脚本的路径。

    4.4K10

    如何在Ubuntu 18.04上将Apache Web Root移动到新位置

    我们将在本教程中使用域名example.com,但您应将其替换为您自己的域名。 文档根目录的新位置。在本教程中,我们将使用该/mnt/volume-nyc3-01目录作为新位置。...在此步骤中,我们将建立文档根目录的位置,并将相关文件复制到新位置。 您可以使用grep搜索文档根目录的位置。...在任何一种情况下,您都可以使用反馈grep来确保移动所需的文件并更新相应的配置文件。 现在您已确认文档根目录的位置,您可以用rsync将文件复制到新位置。...当有斜杠时,rsync会将目录的内容转储到挂载点,而不是将其转移到包含html目录中。...我们将修改[虚拟主机的文件对我们example.com的项目:/etc/apache2/sites-enabled/example.com.conf和/etc/apache2/sites-enabled

    1.3K00

    开发必备的nginx常用功能使用说明指南

    指令-热启动 Nginx重新读取配置的命令 nginx -s reload 如何查看模块文档指南 以查看gzip压缩文件模块的使用为例 示例:nginx官方文档->Modules reference->...~* \.xhtml$ { #规则G } location / { #规则H } 那么产生的效果如下: 访问根目录/, 比如http://localhost/ 将匹配规则A 访问 http:...所以实际使用中,个人觉得至少有三个匹配规则定义,如下: #直接匹配网站根,通过域名访问网站首页比较频繁,使用这个会加速处理,官网如是说。...; //思路:通过/,将所有的请求,转发给第3方处理 } } 既然服务器可以直接HTTP访问,为什么要在中间加上一个反向代理,不是多此一举吗?...负载均衡、虚拟主机等,都基于反向代理实现,当然反向代理的功能也不仅仅是这些。

    74910

    教你如何在Mac系统下自由搭建Nginx+php-fpm

    分享背景 由于一直在虚拟机的状态下开发PHP,尝试一下mac本地搭建环境.mac本身是自带Apache+php的,在低版本的mac系统中,mac中的php版本是5.6的版本....本文分享的是在mac的10.13版本.前提是本地安装了brew包管理工具,如果还没安装的可以参考官网文档安装,传送门....5.NGINX项目目录介绍 通过上面的步骤,就表示NGINX已经完成了.这里有几个文件,我们需要关注一下. 1.nginx配置目录 /usr/local/etc/nginx 2.nginx的项目根目录...fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root...cp /data/server/php7/etc/php-fpm.d/www.conf.default /data/server/php7/etc/php-fpm.d/www.conf 然后在启动一次,

    1.6K40
    领券