在CentOS7.8 阿里云服务器上,一键安装lnmp环境,访问域名后提示: Warning: require(): open_basedir restriction in effect. File(/home/wwwroot/farmadmin/thinkphp/base.php) is not within the allowed path(s): (/home/wwwroot/farmadmin/public/:/tmp/:/proc/) in /home/wwwroot/farmadmin/public/index.php on line 34 Warning: require(/home/wwwroot/farmadmin/thinkphp/base.php): failed to open stream: Operation not permitted in /home/wwwroot/farmadmin/public/index.php on line 34 Fatal error: require(): Failed opening required '/home/wwwroot/farmadmin/public/../thinkphp/base.php' (include_path='.:/usr/local/php/lib/php') in /home/wwwroot/farmadmin/public/index.php on line 34 相对应的nginx伪静态配置如下: location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php/$1 last; break; } } 请问是哪里设置有误,对应如何调整,给出详细操作步骤
时间: 2023-08-09 17:12:36 浏览: 311
使用LNMP一键安装包配置CentOS服务器环境教程
根据您提供的错误提示,问题出在 open_basedir 限制上,它限制了 PHP 可以访问的目录。为了解决这个问题,您需要修改 PHP 的配置文件并设置正确的路径。
请按照以下步骤进行操作:
1. 打开 PHP 的配置文件 php.ini。通常位于 `/etc/php.ini` 或 `/etc/php/7.x/php.ini`。
```
sudo vi /etc/php.ini
```
2. 在 php.ini 文件中搜索 `open_basedir` 配置项。找到类似以下的行:
```
open_basedir = /home/wwwroot/farmadmin/public/:/tmp/:/proc/
```
3. 将配置项的值修改为包含您应用程序所需的路径,例如:
```
open_basedir = /home/wwwroot/farmadmin/:/tmp/:/proc/
```
4. 保存并关闭文件。
5. 重启 Nginx 和 PHP-FPM 服务,使配置生效:
```
sudo systemctl restart nginx
sudo systemctl restart php-fpm
```
这样应该可以解决您遇到的问题。重新访问您的域名,看看是否还会出现相同的错误提示。
如果问题仍然存在,请检查文件路径和权限是否设置正确,并确保 PHP 可以访问到所需的文件。
希望这些步骤能帮助您解决问题!如果您有任何其他问题,请随时提问。
阅读全文