如何在Symfony中使用html文件方法验证(谷歌)域名所有权



如何在Symfony应用程序中添加一个html文件来证明域名的所有权?

这是我的工作解决方案,但我认为它非常丑陋,因为:

  1. 我必须创建一条特殊路线
  2. 我必须将文件存储在我认为它应该存在的/web 目录之外。

步骤 1 - 创建路由(src/mybundle/Ressources/config/routeing.xml

my_route_name:
     path:      /google43d423494a0981c2.html
     defaults: { _controller: MyBundle:Main:googleCheck}

步骤 2 - 创建控制器操作

public function googleCheckAction(){
    return $this->render('google43d423494a0981c2.html.twig');
}

/!\ Carreful - 技巧 1 您需要使用 .twig 扩展名重命名文件,否则这将不起作用。

现在将文件放在应用程序/资源/视图/您还可以将文件放在任何捆绑视图中,只需更改控制器操作中的路径即可。

处理此案的最佳方法是什么?

三个选项:

  1. 只需将 HTML 文件放在 web/ 文件夹中,然后让 Web 服务器呈现它。

  2. 如有必要,你可以将它存储在Symfony项目之外,并告诉你的Web服务器在哪里可以找到它。

  3. 或者,在routing.yml中创建路由并[使用默认控制器提供它](http://symfony.com/doc/current/cookbook/templating/render_without_controller.html)并将模板存储在app/Resources/views的根目录中。

    gwt:
        path: /google43d423494a0981c2.html
        defaults:
            _controller: FrameworkBundle:Template:template
            template:    '::google43d423494a0981c2.html.twig'
    

我个人会选择选项 #2,因为我不想将与应用程序无关的文件添加到存储库中。

最新更新