作为一个phper,常常需要编译LNMP环境,一会儿在公司电脑,一会儿在家的电脑,一会儿在Mac下,一会儿在Ubuntu下……
当出现这个问题时,大致有两方面原因:
- 缺少索引文件,index.php 或者 index.html;
- PHP,NGINX,网站目录三者间的权限没协调好.
主要是第二中情况,简单的说,NGINX
是不处理.php
文件的,而是交由php-fpm
代为处理,若php-fpm
(也就是php)的用户和组为a:a, 而网站目录比如wwwroot用户和组为w:w, 则问题出现。
简单且最为安全的做法是,将nginx,php,wwwroot的用户和组都设为同样的。
1,nginx.conf
user nobody nobody
2,php-fpm.conf
user nobody
group nobody
3,网站目录
sudo chown -R nobody:nobody /path/to/wwwroot
Done!