【问题标题】:Class __PHP_Incomplete_Class has no unserializer when hosting multiple Symfony projects托管多个 Symfony 项目时,类 __PHP_Incomplete_Class 没有反序列化器
【发布时间】:2016-08-12 09:40:48
【问题描述】:

我实际上在我的 Debian 本地服务器上托管了 2 个 Symfony 2.8 项目。我将 Apache 配置为使用这 2 个 URL 为我的 2 个应用程序提供服务:

App1 : http://192.168.0.1
App2 : http://192.168.0.1/app2

当我在 App1 中登录我的帐户并导航到 App2 时,Symfony 会抛出此警告:

警告:类 __PHP_Incomplete_Class 没有反序列化器。

这是我的 Apache 虚拟块 conf :

<VirtualHost *:80>
    ServerName 192.168.0.1
    ServerAlias devserver

    RewriteEngine On
    RewriteCond %{HTTP:Authorization} ^(.)
    RewriteRule . - [e=HTTP_AUTHORIZATION:%1]

    DocumentRoot /var/www/app1/web
    Alias /app2 "/var/www/app2/web"

    <Directory /var/www/app1/web>
        AllowOverride None
        Order Allow,Deny
        Allow from All
        <IfModule mod_rewrite.c>
            Options -MultiViews
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ app_dev.php [QSA,L]
        </IfModule>
    </Directory>

    <Directory /var/www/app2/web>
        AllowOverride None
        Order Allow,Deny
        Allow from All
        <IfModule mod_rewrite.c>
            Options -MultiViews
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ /app2/app_dev.php [QSA,L]
        </IfModule>
    </Directory>

    ErrorLog /var/log/apache2/app_error.log
    CustomLog /var/log/apache2/app_access.log combined
</VirtualHost>

我注意到当我未登录时,在两个应用程序之间导航没有问题。

我已禁用所有 PHP 加速器并清除了两个应用程序上的缓存,但仍有此行为。

你有没有遇到过这个问题?你有什么线索吗?

谢谢。

【问题讨论】:

    标签: php apache symfony debian


    【解决方案1】:

    对于那些遇到同样问题的人,我发现涉及到会话。我通过在config.yml 中添加会话名称来修复警告:

    framework:
        ...
        session:
            name: "app1"
    

    【讨论】:

      猜你喜欢
      • 2013-05-30
      • 1970-01-01
      • 2012-03-22
      • 1970-01-01
      • 1970-01-01
      • 2018-09-01
      • 1970-01-01
      • 2017-07-15
      • 1970-01-01
      相关资源
      最近更新 更多