分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

学习计划 nginx 中 php的配置详解

发布时间:2023-09-06 01:46责任编辑:熊小新关键词:配置nginx

本章只看一个刚下载的nginx是如何支持php的

--

 ?location ~ \.php$ { ???????root ??????????html; ???????fastcgi_pass ??127.0.0.1:9000; ???????fastcgi_index ?index.php; ???????fastcgi_param ?SCRIPT_FILENAME ?/scripts$fastcgi_script_name; ???????include ???????fastcgi_params; ?}

主要学习这里的配置问题

--

首先看一下location块,这是一个正则匹配,说明了所有以 .php 结尾的部分都会在这里解析,我们也是主要讲解这个模块是如何和php通信的。

--

fastcgi_pass  匹配端口,这个也就是告诉发送到那个端口处理 php

--

fasecgi_param  这里更多的是对于参数的一些详细配置

看一下nginx 下的 fasecgi_param 参数

fastcgi_param ?SCRIPT_FILENAME ???$document_root$fastcgi_script_name;#脚本文件请求的路径fastcgi_param ?QUERY_STRING ??????$query_string; #请求的参数;如?app=123fastcgi_param ?REQUEST_METHOD ????$request_method; #请求的动作(GET,POST)fastcgi_param ?CONTENT_TYPE ??????$content_type; #请求头中的Content-Type字段fastcgi_param ?CONTENT_LENGTH ????$content_length; #请求头中的Content-length字段。fastcgi_param ?SCRIPT_NAME ???????$fastcgi_script_name; #脚本名称 fastcgi_param ?REQUEST_URI ???????$request_uri; #请求的地址不带参数fastcgi_param ?DOCUMENT_URI ??????$document_uri; #与$uri相同。 fastcgi_param ?DOCUMENT_ROOT ?????$document_root; #网站的根目录。在server配置中root指令中指定的值 fastcgi_param ?SERVER_PROTOCOL ???$server_protocol; #请求使用的协议,通常是HTTP/1.0或HTTP/1.1。 ?fastcgi_param ?GATEWAY_INTERFACE ?CGI/1.1;#cgi 版本fastcgi_param ?SERVER_SOFTWARE ???nginx/$nginx_version;#nginx 版本号,可修改、隐藏fastcgi_param ?REMOTE_ADDR ???????$remote_addr; #客户端IPfastcgi_param ?REMOTE_PORT ???????$remote_port; #客户端端口fastcgi_param ?SERVER_ADDR ???????$server_addr; #服务器IP地址fastcgi_param ?SERVER_PORT ???????$server_port; #服务器端口fastcgi_param ?SERVER_NAME ???????$server_name; #服务器名,域名在server配置中指定的server_name#fastcgi_param ?PATH_INFO ??????????$path_info;#可自定义变量# PHP only, required if PHP was built with --enable-force-cgi-redirect#fastcgi_param ?REDIRECT_STATUS ???200;在php可打印出上面的服务环境变量如:echo $_SERVER[‘REMOTE_ADDR‘]

--

这里的所有信息都可以通过$_server传过来,同时你也可以再nginx中配置你自己的SERVER

例如:

fastcgi_param DEMO_ENV demo;

这时你就可以在$_SERVER中找到 DEMO_NEV 这个变量了。

--

这也就解释了为什么我们要在nginx和php中配置

fastcgi_param ?SCRIPT_FILENAME ?/scripts$fastcgi_script_name;

这句话要干什么了。

学习计划 nginx 中 php的配置详解

原文地址:https://www.cnblogs.com/25-lH/p/8651888.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved