php - Symfony 5:错误 - 找不到“GET /"
问题描述
我用 sympfony/phpp 开发了一个站点,我想在本地服务器上部署。
在我自己的计算机上开发之后(它运行良好),我将项目放在本地服务器上,在 debian 10 操作系统下使用 apache、php 7.3.x、composer 2.0.0
项目从我的计算机到服务器的所有传输和设置都已完成。项目文件夹名称为si2a。它位于目录 /var/www 中,我按照symfony 文档指南使用 ACL 设置了对该目录的访问权限。
我将站点配置文件设置为名称为si2afama.conf。最后一个位于 /etc/apache2/sites-available 目录中。设置后,我激活站点,重新加载 apache 并清除缓存。这是 si2afama.conf 的包含:
<VirtualHost *:80>
ServerName si2afama
# ServerAlias www.si2afama.com
DocumentRoot /var/www/si2a/public
DirectoryIndex /index.php
<Directory /var/www/si2a/public>
AllowOverride All
Require all granted
Allow from All
FallbackResource /index.php
</Directory>
<Directory /var/www/si2a/public/bundles>
FallbackResource disabled
</Directory>
ErrorLog /var/log/apache2/si2a_error.log
CustomLog /var/log/apache2/si2a_access.log combined
</VirtualHost>
当我尝试访问该站点时,我发现了这个错误: 没有为“GET /si2afama”找到路由
因为,它是一个路由问题,所以这里有一些文件包含:
si2a/config/packages/routing.yaml
framework:
router:
utf8: true
si2a/config.routes.yaml
index:
path: /
controller: App\Controller\DefaultController::index
si2a/public/index.php。
<?php
use App\Kernel;
use Symfony\Component\ErrorHandler\Debug;
use Symfony\Component\HttpFoundation\Request;
require dirname(__DIR__).'/config/bootstrap.php';
if ($_SERVER['APP_DEBUG']) {
umask(0000);
Debug::enable();
}
if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? $_ENV['TRUSTED_PROXIES'] ?? false) {
Request::setTrustedProxies(explode(',', $trustedProxies), Request::HEADER_X_FORWARDED_ALL ^ Request::HEADER_X_FORWARDED_HOST);
}
if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? $_ENV['TRUSTED_HOSTS'] ?? false) {
Request::setTrustedHosts([$trustedHosts]);
}
$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
我真的不知道该怎么做才能解决问题。
请有人帮助我。谢谢你。
解决方案
尝试安装这个包composer require symfony/apache-pack它会创建一个 .htaccess 文件来解决你的问题
推荐阅读
- javascript - Tenor API 搜索不同的结果
- terraform - 具有动态类型元素的对象列表
- ruby-on-rails - 迭代数组和对象属性的更好方法?
- jsdoc - 在 JSDoc 中,有没有办法在单独的文件中定义术语并将它们链接到函数文档中?
- sql - Oracle 中的完整性检查
- node.js - 为什么我们需要 Node JS 中的异步回调,因为 Event Loop 提供了工作池来处理昂贵的任务?
- javascript - 无法将内容粘贴到 TinyMCE 编辑器中
- spring-cloud - 如何正确配置 Grafana Tempo?
- java - 准备使用 bash 工具导出/导入 JCEKS 密钥
- c++ - C++ 别名如何工作?