我将Docker用于我的项目。在安装带有示例数据的2.2.6软件包之后,当我执行php bin/magento cache:clean
无法删除文件“ /var/www/html/src/generated/code/Magento/Backend/App/Request/PathInfoProcessor/Proxy.php”警告!unlink(/ var / www / html / src / genic /code/Magento/Backend/App/Request/PathInfoProcessor/Proxy.php): 没有这样的文件或目录
generated/code
文件夹无法删除,我必须重新启动计算机,然后它才能删除该文件夹
我使用php 7.1.22,percona 5.6.39和docker版本18.06.1-ce-win73(19507)
答案 0 :(得分:2)
这是由于对项目文件夹和文件的权限不足而引起的。如果将Apache用作Web服务器,则www-data也必须是项目的所有者。 请执行以下命令:-
答案 1 :(得分:1)
您是否尝试过更改var,pub和生成的文件夹的权限。我建议您授予他们权限,然后尝试执行cache clean命令。
$ sudo chmod -R 777 var/ pub/ generated/
谢谢 希望对您有帮助!
答案 2 :(得分:1)
从Docker容器的命令行安装magento 2解决了在Windows中为我写权限的问题
您可能需要调整参数:
bin/magento setup:install --base-url=http://local.shop.magento2.com \
--db-host=db_magento2 --db-name=magento --db-user=magento --db-password=magento \
--admin-firstname=magento --admin-lastname=magento --admin-email=user@example.com \
--admin-user=admin --admin-password=admin123 --language=en_US \
--currency=USD --timezone=Europe/Madrid --use-rewrites=1
答案 3 :(得分:0)
以防万一有人偶然发现: 将以下内容添加到您的docker文件中
RUN echo "root:root" | chpasswd
这将允许您切换到root并运行chown
su root
password:root
chown -R user:group /folder
答案 4 :(得分:0)
对于提供帮助的人来说,一个重要的躁狂症是认为所有系统都是相同的。
只要有条件,www-data就是用户,许多条件是无法满足的,因为他们更喜欢使用nginx + php-fpm而不是通才模型。
该模型中包含的其他时间不是运行Appache,nginx的用户,或者最终运行php的用户是www-data。
最正确的答案不是:
Lo mascorrectosería
一旦有了这些数据,便可以执行
<%
jspContext.setAttribute("CONSTANT_NAME", InterfaceName.CONSTANT_NAME);
%>
请停止关注那些总是写chmod -R 777的人
或者有一天,他们会以正常的方式在没有站点的情况下醒来,但是充满了难以治愈的感染。
答案 5 :(得分:-1)
如here所示,只需尝试php bin / magento setup:static-content:deploy,然后再次运行php bin / magento setup:di:compile即可。