首页 文章

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

提问于
浏览
1

我是Symfony的新手,我've just created a new project on a Debian server. The folder is /var/www/symfony. I' ve使用此处定义的说明:https://symfony.com/doc/current/book/installation.html

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

我检查过以下内容:

  • 权限已配置为Web服务器用户/组/的读/写

  • Apache2中的目录已配置为AllowOverrride All

  • DefaultController.php文件定义了"/"路由 .

当我尝试从项目目录(php bin / console server:run)运行PHP内部Web服务器时:

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

    Symfony 3.0及更高版本要求您使用PHP 5.5.9或更高版本 .

  • 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
    

相关问题