尝试在本地安装 prestashop(LAMP),以下错误列表阻止安装继续进行。
文件和文件夹的权限
- ~/config/ 上 www-data 用户的递归写入权限
- ~/cache/ 上 www-data 用户的递归写入权限
- ~/log/ 上 www-data 用户的递归写入权限
- ~/img/ 上 www-data 用户的递归写入权限
- ~/mails/ 上 www-data 用户的递归写入权限
- ~/modules/ 上 www-data 用户的递归写入权限
- ~/themes/default-bootstrap/lang/ 上 www-data 用户的递归写入权限
- ~/themes/default-bootstrap/pdf/lang/ 上 www-data 用户的递归写入权限
- ~/themes/default-bootstrap/cache/ 上 www-data 用户的递归写入权限
- ~/translations/ 上 www-data 用户的递归写入权限
- ~/upload/ 上 www-data 用户的递归写入权限
- ~/download/ 上 www-data 用户的递归写入权限
此外,运行以下命令会导致出现“操作不允许”消息
cd /var/www/prestashop
chown -R www-data *
chgrp -R www-data *
答案1
您需要有更改所有权的权限。将 sudo 添加到您正在执行的命令中:
sudo cd /var/www/prestashop
sudo chown -R www-data *
sudo chgrp -R www-data *
或者直接使用一个命令而不是三个命令来一次性完成所有操作:
sudo chown -R www-data:www-data /var/www/prestashop
答案2
收藏 尝试在本地安装 prestashop(LAMP),以下错误列表阻止安装继续进行。
文件和文件夹的权限
- Apache 用户在 ~/config/ 上的递归写权限
- Apache 用户在 ~/cache/ 上的递归写权限
- Apache 用户在 ~/log/ 上的递归写权限
- Apache 用户在 ~/img/ 上的递归写权限
- Apache 用户对 ~/mails/ 的递归写权限
- Apache 用户对 ~/modules/ 的递归写权限
~/download/ 上 www-data 用户的递归写入权限此外,运行以下命令会导致出现“操作不允许”消息
我有这种类型的权限问题。所以我尝试了这个命令
chmod -R 777 prestashop/
它对我有用,使用 777 可能是一种不好的做法,但我尝试在本地环境中测试它是否有效。
答案3
您不应该将 prestashop 权限更改为 777。这并不安全。
您只应更改文件/文件夹的所有权。以 身份登录root
并假设所有 prestashop 文件/文件夹都位于,/var/www/public_html/
然后 cd 到/var/www/
并输入:
chown -R www-data:www-data public_html/*
如果您未以 身份登录root
,但您是 sudo 用户,则只需sudo
在命令开头添加:
sudo chown -R www-data:www-data public_html/*
chown 是什么
chown
/*
将 ALL(看到末尾的了吗?)文件/文件夹的所有者更改public_html
为 www-data。用户之间的分号仅指定user
: user_group
。-R
告诉命令进行递归并输入所有子文件夹并在那里应用这些更改。
什么是 www-data
取决于您的 Linux 发行版,默认情况下会带有x
默认用户,例如root
。当您安装某些应用程序时,这些应用程序会创建一个特定于应用程序的用户。在许多发行版中,Apache 创建一个名为的用户www-data
。因此,通过将 prestashop 文件/文件夹的所有权更改为www-data
您,本质上允许 Apache 服务器根据其权限操作文件。
开箱即用,它应该可以正常工作。您可能需要更改某些上传/tmp 文件夹的权限,但前提是文件/模块的上传/升级/更新失败。
答案4
我在 SSH 上使用了这个命令,它允许 apache 用户和 FTP 用户的权限:
- 登录 SSH
- 导航到您的 prestashop 网站文件夹
- 当你在其中时,输入此命令 - 将“yourftpusername”替换为您的 ftp 用户名
chown -R apache:yourftppusername *