导航:首页 > 编程语言 > nginx不支持php

nginx不支持php

发布时间:2023-04-17 22:08:01

linux nginx 无法执行php文件

为以前没有接触过nginx ,所以查了一天,查处原因有二:
一、网站根目录
默认是在 /usr/local/nginx/html文件
配置在
location / {
root /home/www/wwwroot;
index index.html index.htm;
}

二、修改文件中对应的php配置部分
location ~ \.php$ {
root /home/www/wwwroot;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
特别需要注意的是:fastcgi_param这个参数默认的是$fastcgi_script_name;最好改为$document_root$fastcgi_script_name;我在实际配置中出现了php找不到需要解析文件而返回404或者500错误的问题。所以最好是带上网站根目录的路径变量$document_root

㈡ 安装nginx+php后,Php页面访问时提示404,但页面是存在的.

安装nginx+php后,Php页面访问时提示404,但页面是存在的,应该是下面的原因造成的:

这个是因为index.html 文件目录是nginx默认安装目录 /usr/local/nginx/html,而info.php 把它放到了 /data/web 下造成的,可以在nginx.conf配置文档里面找到相应的问题。

可以按照下面测试更改:

location ~ .php$ {
root /data/web;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
nginx -t && nginx -s reload

㈢ nginx PHP文件不能正常访问.

一般nginx默认配置中会是这个样子的。这里有一个SCRIPT_FILENAME变量,但是fastcgi_params这个文件中是不包含该变量的,改变量的定义实际上是在fastcgi.conf文件中。

实际上可以把配置修改成如下的配置。

location~.php${
root/usr/share/nginx/html;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
fastcgi_intercept_errorson;
includefast_cgi.conf;

#可以增加rewrite,也可以不增加。
}

按如上的配置,如果访问127.0.0.1:9000/a.php,则实际上根据root指令和fast_cgi.conf配置,nginx会通过fast_pass指令访问/usr/share/nginx/html/a.php这个文件。

记得用root指令,指定站点的文档根路径。

阅读全文

与nginx不支持php相关的资料

热点内容
山科女生程序员 浏览:745
mybatis3源码分析 浏览:455
华为交换机常用配置命令 浏览:375
程序员怎么去银行上班 浏览:589
广州程序员薪资 浏览:888
win7命令提示符输入 浏览:592
关于程序员的故事 浏览:482
吃鸡服务器是什么样的 浏览:19
为什么pspice没有单片机 浏览:5
高数第六版下册答案pdf 浏览:904
sm3算法实现java 浏览:675
只有程序员才懂的笑话 浏览:267
php开发app接口源码 浏览:12
加密狗宝宝 浏览:237
单片机抢答器的原理 浏览:928
百利达体脂仪可以用什么app连接 浏览:227
服务器2016自动备份怎么取消 浏览:844
dos攻击命令大全 浏览:843
梦世界服务器怎么扩大领地 浏览:972
解压breathe 浏览:437