我自己已经尝试回答这个问题有一段时间了,但是找不到任何有帮助的东西,如果这看起来很明显的话,很抱歉:
我是PHP的新手,我正尝试在本地安装Prestashop。我已经将nginx设置为使用phpbrew提供的php-fpm版本(默认系统php太新(7.2),Prestashop无法执行管理页面。我正在尝试运行php 5.6。
问题是,当使用这个安装程序运行Prestashop时,安装不会继续,php用户没有写入安装prestashop的文件夹的权限。
An error has occured:
You need to grant write permissions for PHP on the following directory: /var/www/html/pshop
奇怪的是,这个文件夹属于www-data,它应该是运行服务器的那个文件夹,但由于某种原因,PHP不能在那里写入数据。如果我用一个简单的php文件检查什么是php用户:
<?php
echo 'Current script owner: ' . get_current_user();
?>
我得到的用户是root
,这很奇怪,因为错误似乎是php无法写入文件夹……
也许我漏掉了什么?
发布于 2018-06-04 05:50:35
这似乎是一个安全问题,因为用户文件是根文件。
尝试通过ssh使用chown命令更改用户和组。
$ chown -R www-data:www-data /var/www/html/pshop
如果不能访问ssh,可以尝试使用php system() ou exec()函数执行此命令。
https://stackoverflow.com/questions/50669285
复制相似问题