nginx配置:

root /www/xxxxx/public;

在PHP项目的入口文件index.php里面利用了realpath函数,一样平常是为了获取项目的真实路径,定义项目路径,如下:

php跨目录nginx 限制php项目跨站点拜访 Webpack

realpath函数获取到/www/xxxxx/public的文件是正常,然而崩溃的事情的涌现了,APP_PATH下的其他文件都是获取不到的,一贯返回的是false,无权限访问。

缘故原由:出于安全考虑,nginx做了跨站访问限定。

办理方案:

只需在 location ~ .\.(php|php5)下添加如下配置:

fastcgi_param PHP_ADMIN_VALUE "open_basedir=/www/xxxx:/tmp/:/proc/";

/www/xxxx 即项目的根目录。