Ubuntu 上的 Symfony 2.8 有 2 个项目,只加载了第一个


Symfony 2.8 on Ubuntu with 2 projects only load the firth

我有两个项目和两个虚拟主机。如果我先加载 A,B 显示:

AppKernel 中的 ClassNotFoundException .php第 19 行:试图从命名空间"B"加载类"UserBundle"

您是否忘记了另一个命名空间的"use"语句?

否则,如果我重置 apache 并首先加载 B 一切正常,但 A 显示相同:

AppKernel 中的 ClassNotFoundException.php第 20 行:试图从命名空间"A"加载类"UserBundle"

您是否忘记了另一个命名空间的"use"语句?

我将此 apache 配置用于虚拟主机(项目 a 带有 a,项目 b 带有 b):

<VirtualHost *:80>
ServerName      localhost.a
DocumentRoot    "/var/www/A/web"
DirectoryIndex  app_dev.php
<Directory "/var/www/A/web">
    AllowOverride None
    Allow from All
    <IfModule mod_rewrite.c>
        Options -MultiViews
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ app_dev.php [QSA,L]
    </IfModule>
</Directory>
CustomLog  /var/log/httpd/a-access.log combined
KeepAlive            On
MaxKeepAliveRequests 200
KeepAliveTimeout     5
<IfModule mod_filter.c>
    AddOutputFilterByType DEFLATE "application/atom+xml" '
                                  "application/javascript" '
                                  "application/json" '
                                  "application/rss+xml" '
                                  "application/x-javascript" '
                                  "application/xhtml+xml" '
                                  "application/xml" '
                                  "image/svg+xml" '
                                  "text/css" '
                                  "text/html" '
                                  "text/javascript" '
                                  "text/plain" '
                                  "text/xml"
</IfModule>
<IfModule mod_headers.c>
    Header append Vary User-Agent env=!dont-vary
    ExpiresActive On
    ExpiresDefault "now plus 1 week"
    ExpiresByType image/x-icon "now plus 1 month"
    ExpiresByType image/gif    "now plus 1 month"
    ExpiresByType image/png    "now plus 1 month"
    ExpiresByType image/jpeg   "now plus 1 month"
</IfModule>
</VirtualHost>

Symfony似乎工作得很好,但我不明白,因为只有先工作Symfony

我的阿帕奇:服务器版本: Apache/2.4.18 (Ubuntu)服务器内置: 2016-01-05T00:00:00

我在使用Symfony 2.8.x和Apache 2.4.x时遇到了同样的问题。

在与我的Apache配置斗争了几天之后,我放弃了,并在Stack上进行了一些搜索。我找到了这个线程:如何在同一台服务器上配置多个 Symfony2 项目

尽管看起来很奇怪,但修改解决了问题。

基本上,Angel 建议在 php.ini 中取消注释该行:opcache.enable = 0

不要忘记重新启动服务器。

更新 26/

10/2016 :

事实上,问题的核心在于xcache的使用,可能是因为我不知道正确配置它(我尝试了很多很多参数和组合)。我禁用了xcache(我将其从Apache服务器加载的模块中删除),它解决了问题。

现在,我也可以使用opcache,例如,我在Drupal 8.2中需要它。