[英]How to set Home page route in Symfony 2.8
I got a hard time learning Symfony 2.8
. 我很难学习
Symfony 2.8
。
I have created a bundle
called BlogBudle
and inside this I created a controller
called HomeController
. 我创建了一个名为
BlogBudle
的bundle
并在其中创建了一个名为HomeController
的controller
。
My goal is: Create a /test
URL
and assign it to home page url
我的目标是:创建一个
/test
URL
并将其分配给home page url
Below is my code: 下面是我的代码:
/var/www/symfony/app/config/routing.yml /var/www/symfony/app/config/routing.yml
blog:
resource: "@BlogBundle/Controller/"
type: annotation
prefix: /
app:
resource: "@AppBundle/Controller/"
type: annotation
/var/www/symfony/src/BlogBundle/Controller/HomeController.php /var/www/symfony/src/BlogBundle/Controller/HomeController.php
namespace BlogBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
class HomeController extends Controller
{
/**
* @Route("/test")
*/
public function indexAction()
{
return $this->render('BlogBundle:Default:index.html.twig');
}
}
When I run php app/console debug:router
, it shows 当我运行
php app/console debug:router
,它显示
Name Method Scheme Host Path
名称方法方案主机路径
blog_home_index ANY ANY ANY /test
blog_home_index ANY ANY ANY / test
Problem: If I visit http://www.example.com/test
, it's showing 404
error. 问题:如果我访问
http://www.example.com/test
,则显示404
错误。
Also below is my VH Configuration: 以下也是我的VH配置:
<VirtualHost *:80>
#ServerAdmin admin@test.com
ServerName mysmfony.com
ServerAlias www.mysymfony.com
DocumentRoot /var/www/symfony/web
DirectoryIndex app_dev.php
<Directory /var/www/symfony/web>
AllowOverride All
Options All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/mysymfony.com.log
CustomLog ${APACHE_LOG_DIR}/mysymfony.com.log combined
</VirtualHost>
Need to overwrite your bundle route in app/config/routing.yml such as : 需要覆盖app / config / routing.yml中的捆绑路由,例如:
user_test:
resource: "@BlogBundle/Resources/config/routing.yml"
prefix: /
and 和
Here is route for redirect to your Home page 这是重定向到您的主页的途径
BlogBundle/Resources/config/routing.yml BlogBundle /资源/配置/ routing.yml中
any_unique_route_name:
pattern: /test
defaults: { _controller: BlogBundle:Home:index }
Make sure this is helpful to you. 确保这对您有帮助。
Here is an example : 这是一个例子:
routing.yml 使用routing.yml
my_route_name:
path: /test
defaults:
_controller: NamespaceBlogBundle:Home:index
Also if your controller is called HomeController render should be like this 另外,如果您的控制器称为HomeController,则渲染应如下所示
public function indexAction()
{
return $this->render('NamespaceBlogBundle:Home:index.html.twig');
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.