Symfony 项目显示目录索引而不是索引页
Symfony project shows directory index instead of index page
我是 Symfony 的新手,我刚刚在 Debian 服务器上创建了一个新项目。该文件夹是 /var/www/symfony。我使用了此处定义的说明:https://symfony.com/doc/current/book/installation.html
当我从网络浏览器访问该文件夹时,我看到了包含文件的目录索引。但是我缺少默认页面。
我检查了以下内容:
- Web 服务器的权限已配置为 read/write
user/group/
- Apache2 中的目录已配置为
全部允许覆盖
- DefaultController.php 文件定义了“/”路由。
当我尝试从项目目录 运行 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 中的错误,还是我遗漏了什么?
Symfony 3.0 及更高版本要求您使用 PHP 5.5.9 或更高版本。
您应该确保您的 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
我是 Symfony 的新手,我刚刚在 Debian 服务器上创建了一个新项目。该文件夹是 /var/www/symfony。我使用了此处定义的说明:https://symfony.com/doc/current/book/installation.html
当我从网络浏览器访问该文件夹时,我看到了包含文件的目录索引。但是我缺少默认页面。
我检查了以下内容:
- Web 服务器的权限已配置为 read/write user/group/
- Apache2 中的目录已配置为 全部允许覆盖
- DefaultController.php 文件定义了“/”路由。
当我尝试从项目目录 运行 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 中的错误,还是我遗漏了什么?
Symfony 3.0 及更高版本要求您使用 PHP 5.5.9 或更高版本。
您应该确保您的 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