事情是这样的:
sudo spt-get install php5
之后一切顺利完成,然后
sudo nano /usr/share/nginx/html/testphp.php
内容是“phpinfo();
?>”(没有引号),
但是在输入h抗投诉服务器ttp://IP地址/testphp.php之后
变成了下载“testphp.php”这个文件,而不是打开php页面,
这是为何?该怎么解决?
另:直接输入http://IP地址/之后可以正常显示静态的nginx欢迎页面。
这是 nginx 没配置好。
Nginx 没指明 .php 交给谁处理…
nginx的最后一段配置(默认被注释掉了),需要将php文件交给php-fpm处理。建议用谷歌搜索关键词:LEMP,英文资料很多很详细
注意红色的字,{}之类的是否正确了
你的nginx默认设置响应类型是二进制流,所以浏览器会开始下载
/etc/nginx/nginx.conf
...
http {
default_type application/octet-stream;
...
做网站的话建议改成
default_type text/plain;
记得改完reload
service nginx reload
贴出你的nginx配置文件,原因就一目了然了。
话说官方默认的配置文件把php那块的注释去掉就好了。
配置文件少了一个 index.php
话说这个问题应该网上一大堆吧…不可能折腾几天还没搜到啊…
php5-fpm安装了没有?
安装后nginx配置fpm没有?
难道不是安装php5-fpm?
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_buffer_size 1024k;
fastcgi_buffers 6 256k;
fastcgi_busy_buffers_size 1024k;
include /etc/nginx/fastcgi_params;
}