prestashop 中的权限问题



我在Presta Shop上遇到了一个奇怪的问题,我使用的是1.6.1.20版本。完成安装后,几分钟内一切正常,然后我收到500错误,现在我得到的消息是:

Warning: require_once(/home/coblassa/public_html/shop/classes/Tools.php): failed to open stream: Permission denied in /home/coblassa/public_html/shop/classes/PrestaShopAutoload.php on line 111
Fatal error: require_once(): Failed opening required '/home/coblassa/public_html/shop/classes/Tools.php' (include_path='.:/opt/cpanel/ea-php56/root/usr/share/pear') in /home/coblassa/public_html/shop/classes/PrestaShopAutoload.php on line 111

我知道这与权限有关,但我不知道该怎么做。

检查 config/文件夹中的settings.inc.php文件,查看define('_PS_DIRECTORY_',...)然后检查数据库中ps_shop_url表(physical_uri字段应为/或/dirname/)。还要检查主目录中.htaccess文件的写入权限。通常这里的某个地方是大多数 500 个错误的答案。

下面的更多是出于安全原因,但也许它也会帮助你。 安装 Prestashop 后,我通常使用以下命令阻止所有权限,例如

sudo chown -R myUserName:www-data public_html
cd public_html
sudo find . -type f -exec chmod 640 {} ; && find . -type d -exec chmod 751 {} ;

然后我执行一个小脚本来授予 apache 访问它可能需要写入的目录的权限

#!/bin/bash
chmod -R g+w config/
chmod -R g+w cache/
chmod -R g+w log/
chmod -R g+w img/
chmod -R g+w mails/
chmod -R g+w modules/
chmod -R g+w themes/
chmod -R g+w translations/
chmod -R g+w upload/
chmod -R g+w download/
chmod 664 .htaccess

最新更新