我正在尝试使用我正在开发的网站并对其进行调整以使用 symfony 框架,但我在网络开发方面相当陌生并且有很多问题。
- 我很难正确加载所有资源。我正在尝试使用 assetic,但无论我尝试什么,我在加载页面时都会收到数百个 404 not found 响应。我当前的目录结构如下:
- Symfony
- src
- CS4750
- PhotoChallengeBundle
- Controller
- Resources
- config
- public
- css
- img
- js
- libraries
- LibraryX
- css
- img
- js
- views
我现在遇到的最大问题是 css 文件中的图像。我试过使用
filters:
cssrewrite: ~
但所有路径都指向 http://localhost/Symfony/web/Resources/public/img/*
而不是 http://localhost/Symfony/web/束/cs4750photochallenge/img
我先尝试不做 asset:install web 然后尝试这样做,但这些似乎都没有什么不同。如果有人能帮我解决这个问题,那就太棒了。
我遇到的另一个问题是 css 文件导入了两个额外的 css 文件。当页面加载额外的 css 文件时,也会返回 404 响应。
asset:install 和 asset:dump 有什么区别
我的一个 js 文件也返回服务器错误 500,但我对它的处理方式与其他似乎工作正常的 js 文件相同。
如能回答上述任何问题或提供相关网站/帖子的链接,我们将不胜感激。我已经在互联网上搜索了几个小时,但没有取得任何进展。如果您需要我发布和编码或更详细地描述我的元素布局,请告诉我。
更多信息:
Example of css files:
/* IMPORTS ------------------------------------------------------------*/
@import url('reset.css');
@import url('styled-elements.css');
/* HACKS ------------------------------------------------------------*/
.clear {
clear: both;
height: 1px;
}
body {
line-height: 1;
color: #51565b;
background: #f1f1f1 url(../img/bg/patterns/noise.png);
font-family: Arial, Helvetica, sans-serif;
font-size: 100%;
}
Config_dev.yml:
imports:
- { resource: config.yml }
framework:
router: { resource: "%kernel.root_dir%/config/routing_dev.yml" }
profiler: { only_exceptions: false }
web_profiler:
toolbar: true
intercept_redirects: false
monolog:
handlers:
main:
type: stream
path: %kernel.logs_dir%/%kernel.environment%.log
level: debug
firephp:
type: firephp
level: info
assetic:
use_controller: true
filters:
cssrewrite: ~
模板:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Weekly Photo Challenge</title>
<!-- CSS -->
{% stylesheets
'@CS4750PhotoChallengeBundle/Resources/public/css/*'
'@CS4750PhotoChallengeBundle/Resources/public/libraries/fancybox/css/*'
filter='cssrewrite'
%}
<link rel="stylesheet" type="text/css" media="screen" href="{{ asset_url }}" />
{% endstylesheets %}
<!-- JAVASCRIPT -->
{% javascripts
'@CS4750PhotoChallengeBundle/Resources/public/js/jquery-1.5.1.min.js'
'@CS4750PhotoChallengeBundle/Resources/public/js/*'
'@CS4750PhotoChallengeBundle/Resources/public/js/ajax/*'
'@CS4750PhotoChallengeBundle/Resources/public/libraries/fancybox/js/*'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
最佳答案
我创建了一个小包 FkrCssURLRewriteBundle这解决了这个问题。看看自述文件它是如何工作的。也许你们中的一些人会感兴趣。
关于css - Symfony 2 Assets 元素布局和资源管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9763645/