我有一个名为" cdn"的文件夹。在我的/ web文件夹中,我想公开访问那里的javascript文件(基本上,它是一个书签)。我不想使用控制器来提供文件,而是让服务器直接提供文件。
我怎么能在Symfony 2中这样做? (PS i'也使用资产)
提前谢谢你, 罗曼
答案 0 :(得分:3)
您可以在配置中使用assets_base_urls
定义 public 文件夹的根目录,从而使用其他目录:
应用程序/配置/ config.yml :
templating:
assets_base_urls: "%assets_base_urls%"
这将使用在特定上下文中定义的值:
应用程序/配置/ config_dev.yml :
parameters:
assets_base_urls: "http://localhost/.../cdn/"
应用程序/配置/ config_prod.yml :
parameters:
assets_base_urls: "http://cdn.example.com/"
此网址应指向服务器上的目录,例如/var/www/site/public/
。
您必须dump the assets到两个上下文中的相应目录才能将文件放到正确的目录中:
# dev
php app/console assetic:dump --env=dev .../cdn --no-debug
# prod
php app/console assetic:dump --env=prod `/var/www/site/public/` --no-debug
答案 1 :(得分:0)
您始终可以使用直接网址。 “end-asset”又名www.domain.com/path/relative/to/web/asset.img永远不会被应用程序服务,而是由服务器提供。
因此,您使用的任何网络服务器都会直接访问该资产。