Symfony的app_dev.php显示“半”源代码

问题描述 投票:0回答:2

我用作曲家下载了它。尝试使用PHPStorm的内置服务器运行,但它不加载工具栏(404)。

然后我尝试用Apache运行它,我将我的项目复制到/var/www/html然后我在浏览器中去了http://localhost/symfony_app/web/app_dev.php

奇怪的是它部分显示了源代码(但没有换行符):

loadClassCache(); $request = Request::createFromGlobals(); $response = $kernel->handle($request); $response->send(); $kernel->terminate($request, $response); 

此文件(完整)具有以下源代码:

<?php

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Debug\Debug;

// If you don't want to setup permissions the proper way, just uncomment the following PHP line
// read http://symfony.com/doc/current/book/installation.html#checking-symfony-application-configuration-and-setup
// for more information
//umask(0000);

// This check prevents access to debug front controllers that are deployed by accident to production servers.
// Feel free to remove this, extend it, or make something more sophisticated.
if (isset($_SERVER['HTTP_CLIENT_IP'])
    || isset($_SERVER['HTTP_X_FORWARDED_FOR'])
    || !(in_array(@$_SERVER['REMOTE_ADDR'], ['127.0.0.1', 'fe80::1', '::1']) || php_sapi_name() === 'cli-server')
) {
    header('HTTP/1.0 403 Forbidden');
    exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.');
}

/**
 * @var Composer\Autoload\ClassLoader $loader
 */
$loader = require __DIR__.'/../app/autoload.php';
Debug::enable();

$kernel = new AppKernel('dev', true);
$kernel->loadClassCache();
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);

在Apache错误日志中没有任何东西,只需重新启动即可。

该应用程序可与Symfony的内置服务器一起在端口8000中正常运行

php symfony apache2.4
2个回答
0
投票

在我做的一个新的流浪汉设置上,我发生了同样的事情。我见过的最奇怪的事情。事实证明我已经安装了php5,但并不完全。我需要在Ubuntu中专门安装libapache2-mod-php5包。运行它在Ubuntu中为我安装它:

sudo apt-get install php5

我不知道你正在运行什么系统,但它可能是一个缺少这样的php包,这是罪魁祸首。


0
投票

如果您安装了apache2和php并且启用了此问题

mod_rewrite

你可以这样做:

a2enmod rewrite

在你的终端并重启apache

© www.soinside.com 2019 - 2024. All rights reserved.