如何在防火墙后保护静态资产(JavaScript和CSS)?
我有一个管理部分,其中大量使用JavaScript。我不想将代码暴露给公众。
目前,我使用Assetic将所有JavaScript编译为文件,并存储在“/ web / admin / js / xyz.js”。
我是否忽略了一种简单的方法来实现此目的?
如何在防火墙后保护静态资产(JavaScript和CSS)?
我有一个管理部分,其中大量使用JavaScript。我不想将代码暴露给公众。
目前,我使用Assetic将所有JavaScript编译为文件,并存储在“/ web / admin / js / xyz.js”。
我是否忽略了一种简单的方法来实现此目的?
/**
* Serves static javascript file.
* We have configured /secure to be secured by some firewall
*
* @Route("/secure/xyz.js", name="static_xyz")
*/
public function staticXyzAction()
{
$headers = array(
'Content-Type' => 'text/javascript',
);
return new Response(file_get_contents($this->get('kernel')
->getRootDir().'../web/admin/js/xyz.js'), 200, $headers);
}
这只是一个使用您提供的数据的示例。显然,在您的最终代码中,提供文件的目录不应直接由Web服务器访问。
这种方法的明显缺点是性能。与您的Web服务器相比,PHP用于提供静态文件的速度要慢得多,但根据您的负载情况,这可能不是问题。
app.dev
”。;) - Vitalii Zurian