2016-11-08 3 views

답변

1

절대 URL 생성시 포트가 포함되어야합니다.

use Symfony\Component\Routing\Generator\UrlGeneratorInterface; 
... 

public function indexAction(Request $request) 
{ 
    $link = $this->generateUrl(
     'route_name', [ 
      'route'=>'params' 
     ], 
     UrlGeneratorInterface::ABSOLUTE_URL 
    ); 

    return $this->render('template', [ 
     'link' => $link; 
    ]); 
} 
+0

해결되었습니다. 감사합니다. 나는 $ url = "www.example". $ port. $ port. "/ someAction"과 같이 나 자신에 의해 URL을 구성하려고 시도했다. 절대 URL을 생성하는 것은 절대적으로 올바른 방법입니다. 감사! –

2

Request 개체는 URI와 포트를 모두 보유합니다. 그래서 컨트롤러에서 당신이

public function indexAction(Request $request) 
{ 
    $uri = $request->getUri(); 
    $port = $request->getPort(); 
} 

당신이 컨트롤러에없는 경우

이 클래스의 RequestStack를 주입해야 할 수 있습니다에서 다음 마스터 요청에서 URI와 포트를 가져

$requestStack->getMasterRequest()->getUri(); 
+0

제가'indexAction' 컨트롤러에 있다고 가정 해 봅시다. 여기에서 PHP 템플릿에 다른 컨트롤러를 참조하는 URL을 전달하려고합니다. 'nextAction'은 현재 사용자 포트 번호를 포함합니다. –

관련 문제