![](/img/trans.png)
[英]Symfony Deploying Project on Distant Server ContextErrorException
[英]Issue when deploying Symfony project to prod server
我是 Symfony 的新手,我遇到了我的路由返回 404 错误的问题。 在我的开发环境中一切正常,但我不知道如何在 prod 服务器上部署我的项目。 我可能在某个地方错过了一步。
所以这是我的 controller 之一,名为HomeController :
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class HomeController extends AbstractController
{
#[Route('/', name: 'home')]
public function index(): Response
{
return $this->render('home/index.html.twig');
}
#[Route('/pc', name: 'home_pc')]
public function pc(): Response
{
return $this->render('home/pc.html.twig');
}
当我执行以下命令php bin/console debug:router --show-controllers
时。 控制台打印以下内容,所以我猜 Symfony 知道我的不同路线。
--------- -------- -------- ------ ------ ----------------------------------------
Name Method Scheme Host Path Controller
--------- -------- -------- ------ ------ ----------------------------------------
home ANY ANY ANY / App\Controller\HomeController::index()
home_pc ANY ANY ANY /pc App\Controller\HomeController::pc()
--------- -------- -------- ------ ------ ----------------------------------------
然后,例如,当我尝试访问mywebsite.com/pc
时,它只会给我一个空白页和404 错误。
谁能帮我解决我的问题? 也许您需要另一个文件来查看问题所在?
试着把这个 .htaccess 内容放在 public_html 目录中
RewriteEngine On
RewriteCond %{THE_REQUEST} /public/([^\s?]*) [NC]
RewriteRule ^ %1 [L,NE,R=302]
RewriteRule ^((?!public/).*)$ public/$1 [L,NC]
即使它有效,也不应该这样做,所以将其视为临时解决方案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.