首页 > 解决方案 > 在 aws ubuntu 上安装期间,mautic 抛出错误 php 错误

问题描述

mautic 在安装过程中抛出了惊人的错误:

由于遇到错误,该站点当前处于脱机状态。如果问题仍然存在,请联系系统管理员。

所以我进入了服务器日志,其中显示:

PHP 警告:include():无法在 /var/www 中打开 '/var/www/myfolder/var/cache/prod/middlewares.cache.php' 以包含 (include_path='.:/usr/share/php') /myfolder/app/middlewares/MiddlewareBuilder.php 在第 82 行 PHP 消息:PHP 警告 - 为 foreach() 提供的参数无效 - 在文件 /var/www/mauticwp/app/middlewares/MiddlewareBuilder.php - 在第 84 行 PHP 消息:PHP 警告:在第 84 行的 /var/www/mauticwp/app/middlewares/MiddlewareBuilder.php 消息中为 foreach() 提供的参数无效:RuntimeException:无法创建“缓存”目录(/var/www/myfolder/var/cache/产品)。- 在文件 /var/www/myfolder/vendor/symfony/http-kernel/Kernel.php - 在第 765 行

    #NameVirtualHost *:8000
<VirtualHost *:8000>

        ServerAdmin webmaster@localhost
        ServerName somesubdomain.ndedges.com
        ServerAlias www.mautic.ndedges.com
        DocumentRoot /var/www/some_directory
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

    <IfModule mpm_itk_module>
        AssignUserId mauticadmin www-data
    </IfModule>


        <IfModule mod_fastcgi.c>
                AddHandler php7.4-fcgi .php
                Action php7.4-fcgi /php7.4-fcgi virtual
                Alias /php7.4-fcgi /usr/lib/cgi-bin/php7.4-fcgi-mautic.ndedges.com
                FastCgiExternalServer /usr/lib/cgi-bin/php7.4-fcgi-test.com -socket /var/run/php/php7.4-fpm-mautic.ndedges.com.sock -pass-header Authorization
        </IfModule>
     <Directory /var/www/some_directory>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     </Directory>

    <FilesMatch .php$>
        # 2.4.10+ can proxy to unix socket
         SetHandler "proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost"
    </FilesMatch>
</VirtualHost>

在 fpm/pool.d/www.mautic.conf 中。我加了

    php_admin_value[disable_functions] = exec,passthru,shell_exec,system
php_admin_flag[allow_url_fopen] = off

因为我在同一台服务器中有多个 PHP。我在 WordPress 中配置了 Cloudflare 并重定向到 HTTPS。但我无法使用 ip 和端口来使用它。

我完全不知道可能是什么原因。

谢谢萨扬坦

标签: phpubuntucloudflaremautic

解决方案


大多数时候它是缓存和权限相关的问题,在我看来它与 Apache 配置无关。

  • 用于ps aux识别哪个用户拥有 apache 进程,
  • 大多数情况下www-data
  • 确保对所有目录和子目录进行 chown 以将所有权更改为www-data.
  • 确保文件和目录具有适当的权限www-data,Mautic 需要对 Media、var/cache 和 var/logs 目录的写入权限。

https://tutorialsjoint.com/install-mautic/在本教程中查看“设置 Mautic 安装的权限和权限”部分。

它会在与 nginx 或 apache 相同的天气下工作,因为这个问题似乎只与 linux 相关。


推荐阅读