Symfony项目显示目录索引而不是索引页

时间:2016-04-13 15:03:56

标签: php apache symfony

我是Symfony的新手,我刚刚在Debian服务器上创建了一个新项目。该文件夹是/ var / www / symfony。我使用了此处定义的说明:https://symfony.com/doc/current/book/installation.html

当我从网络浏览器访问该文件夹时,我看到带有文件的目录索引。但是我错过了默认页面。

我检查过以下内容:

  1. 已将权限配置为Web服务器的读/写 user / group /
  2. Apache2中的目录已配置为 AllowOverrride All
  3. DefaultController.php文件有一个" /"路线定义。
  4. 当我尝试从项目目录运行PHP内部Web服务器时(php bin / console server:run):

    PHP Parse error:  syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in /var/www/symfony/vendor/symfony/symfony/src/Symfony/Component/Debug/ErrorHandler.php on line 386
    PHP Stack trace:
    PHP   1. {main}() /var/www/symfony/bin/console:0
    PHP   2. Symfony\Component\Debug\Debug::enable() /var/www/symfony/bin/console:24
    PHP   3. Composer\Autoload\ClassLoader->loadClass() /var/www/symfony/bin/console:0
    PHP   4. Composer\Autoload\includeFile() /var/www/symfony/vendor/composer/ClassLoader.php:301
    

    我正在运行PHP 5.4.54。这是Symfony中的一个错误,还是我错过了什么?

2 个答案:

答案 0 :(得分:0)

Symfony 3.0及以上版本要求您使用PHP 5.5.9或更高版本。

答案 1 :(得分:0)

您应该确保您的DocumentRoot指向apache配置文件中的 / var / www / symfonyproject / web 文件夹。请参阅下文。

<VirtualHost *:80>
    ServerName domain.tld
    ServerAlias www.domain.tld

    DocumentRoot /var/www/project/web
    <Directory /var/www/project/web>
        AllowOverride All
        Order Allow,Deny
        Allow from All
    </Directory>
    ErrorLog /var/log/apache2/project_error.log
   CustomLog /var/log/apache2/project_access.log combined
</VirtualHost