微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nginx支持php

目录

一.简介

Nginx本身只能解析html文件,但有些网页是PHP写的,就需要Nginx连接PHP,将网页解析成html再发给客户端。

配置中将.PHP 结尾的请求通过 FashCGI 交给 PHP-FPM 处理,PHP-FPM是PHP一个FastCGI管理器。

二.配置

1.若没有安装PHP-fpm,可以看这篇文章安装。

2.在server字段中添加一个location字段

	location ~ \.PHP$ { #匹配PHP文件,只有PHP文件才放到这里解析
		root  html; #PHP页面地址
		
		#Nginx将会连接本地 9000 端口执行PHP文件,使用的TCP/IP协议,速度较慢。若在本地可以换成socket方式,去连接PHP-fpm的sock文件,改成fastcgi_pass unix:/var/run/PHPfpm.sock;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.PHP;

		#/usr/local/Nginx/html是PHP文件所在的目录,虽然root那行指定了目录,但通常不靠谱
		fastcgi_param  SCRIPT_FILENAME  /usr/local/Nginx/html$fastcgi_script_name;
	    include        fastcgi_params;
	}

3.编写PHP测试页面
vim /usr/local/Nginx/html/index.PHP

<?PHP
        PHPinfo();
?>

4.重启
Nginx -s reload

三.测试

1.浏览器访问http://127.0.0.1/index.PHP

四.参数

以下均添加到location所在字段

#第一行代码是为FastCGI缓存指定一个文件路径、目录结构等级、关键字区域存储时间和非活动删除时间。
fastcgi_cache_path /usr/local/Nginx/fastcgi_cache levels=1:2 keys_zone=TEST:10m inactive=5m;

#指定连接到后端FastCGI的超时时间,认60秒
fastcgi_connect_timeout 30;

#指定向FastCGI传送请求的超时时间,规定时间内后端服务器必须传输完所有数据
fastcgi_send_timeout 30;

#指定接收FastCGI应答的超时时间,如果PHP-fpm迟迟不发送,将超时
fastcgi_read_timeout 30;

#用于指定读取Nginx的FastCGI去响应PHP-fpm的响应头要多大的容量
fastcgi_buffer_size 64k;

#指定本地需要用多少和多大的缓冲区来缓冲FastCGI的应答请求。如果一个PHP脚本所产生的页面大小为256KB,那么会为其分配4个64KB的缓冲区来缓存;如果页面大小大于256KB,那么大于256KB的部分会缓存到fastcgi_temp指定的路径中,但是这并不是好方法,因为内存中的数据处理速度要快于硬盘。一般这个值应该为站点PHP脚本所产生的页面大小的中间值,如果站点大部分脚本所产生的页面大小为256KB,那么可以把这个值设置为“16 16k”、“4 64k”等。
fastcgi_buffers 4 64k;

#用于系统很忙是使用的大小,的认值是fastcgi_buffers的两倍。
fastcgi_busy_buffers_size 128k;

#表示在写入缓存文件时使用多大的数据块,认值是fastcgi_buffers的两倍
fastcgi_temp_file_write_size 128k;

#表示开启FastCGI缓存并为其指定一个名称。开启缓存非常有用,可以有效降低cpu负载,并且防止502错误的发生,但是开启缓存也会引起很多问题,要视具体情况而定。
fastcgi_cache TEST;

#fastcgi用来指定应答代码的缓存时间,实例中的值表示将200和302应答缓存一个小时,将301应答缓存1天,其他应答均缓存1分钟。
fastcgi_cache_valid 200 302 1h;

fastcgi_cache_valid 301 1d;

fastcgi_cache_valid any 1m;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐