nginx php-fpm 都已经设置好,访问php页面直接下载文件
location ~ \.php$ {
fastcgi_pass 0.0.0.0:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
include fastcgi_params;
break;
}
location / {
rewrite ^/ /index.php break;
}
这样设置 访问php页面会直接下载php文件
但是不重定向
location / {
index index.php
}
就能够正常执行php文件,头都大了,不知道为什么。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
应该是把break改成last就好了
你的这一段意思为,将所有的uri转发请求重写为index.php 然后break,新的重写后的uri(在这个列子被重写为index.php)不会再去匹配下面这个location,所以你的php文件没有传递给php-fpm去解析。但是换成last以后,新的uri会重新匹配符合条件的location,所以index.php被传递给php-fpm解析执行了。
如果不明白,毛遂自荐自己的一篇博客。http://blog.csdn.net/fantexi1...
fastcgi_pass 0.0.0.0:9000; 0.0.0.0是什么鬼
如果是新手的话, 不建议自己配置, 尽量使用一键配置比如:https://lnmp.org的lnmp一键安装
我本地使用的配置。
php-fpm 重启否?
参考一下我的试一试
建议查看nginx和php的日志来发现问题,
我的conf是这样的:
另外,你的php-fpm进程正常么?
$ ps aux|grep 'php-fpm'
21274 user php-fpm: master process (/usr/local/php5.6/etc/php-fpm.conf)
21275 user php-fpm: pool www
21276 user php-fpm: pool www