This topic created in 4229 days ago, the information mentioned may be changed or developed.
事情是这样的:
sudo spt-get install php5
之后一切顺利完成,然后
sudo nano /usr/share/nginx/html/testphp.php
内容是“<?php
phpinfo();
?>”(没有引号),
但是在输入http://IP地址/testphp.php之后
变成了下载“testphp.php”这个文件,而不是打开php页面,
这是为何?该怎么解决?
另:直接输入http://IP地址/之后可以正常显示静态的nginx欢迎页面。
9 replies • 2014-11-03 10:21:39 +08:00
 |
|
1
kchum Nov 2, 2014 via iPhone
这是 nginx 没配置好。
|
 |
|
2
kchum Nov 2, 2014 via iPhone
Nginx 没指明 .php 交给谁处理…
|
 |
|
3
TrustyWolf Nov 3, 2014 via iPhone
nginx的最后一段配置(默认被注释掉了),需要将php文件交给php-fpm处理。建议用谷歌搜索关键词:LEMP,英文资料很多很详细
|
 |
|
5
chemzqm Nov 3, 2014
你的nginx默认设置响应类型是二进制流,所以浏览器会开始下载 /etc/nginx/nginx.conf ... http { default_type application/octet-stream; ... 做网站的话建议改成 default_type text/plain; 记得改完reload service nginx reload
|
 |
|
6
ewBuyVmLZMZE Nov 3, 2014
贴出你的nginx配置文件,原因就一目了然了。 话说官方默认的配置文件把php那块的注释去掉就好了。
|
 |
|
7
nonozone Nov 3, 2014 via Android
配置文件少了一个 index.php 话说这个问题应该网上一大堆吧…不可能折腾几天还没搜到啊…
|
 |
|
8
lshero Nov 3, 2014
php5-fpm安装了没有? 安装后nginx配置fpm没有?
|
 |
|
9
lfzyx Nov 3, 2014
难道不是安装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; }
|