我有一个 Rails 3.2.6 应用程序,我正在使用 Assets 管道,但我没有 favicon.ico 但由于某种原因,我的应用程序一直在寻找它,这导致了问题
Started GET "/favicon.ico" for 127.0.0.1 at 2012-06-18 16:20:44 -0400
Processing by PlaylistsController#index as
我不知道是什么导致它被调用...我的应用程序中根本没有任何包含文本图标的东西
我的问题是,rails 中是否有一个地方可以告诉它停止?
为了以防万一,这是我的头部信息
<head>
<title>Playlist</title>
<meta content='width=device-width, initial-scale=1.0' name='viewport'>
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js" type="text/javascript"></script>
<![endif]-->
<link href="/assets/application.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/common.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/app.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/bootstrap_and_overrides.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/jquery-ui-1.8.21.custom.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/main.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/dataTables/jquery.dataTables.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/dataTables/jquery.dataTables.bootstrap.css?body=1" media="all" rel="stylesheet" type="text/css" />
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/dataTables/jquery.dataTables.js?body=1" type="text/javascript"></script>
<script src="/assets/dataTables/jquery.dataTables.bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery-ui.js?body=1" type="text/javascript"></script>
<script src="/assets/bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/editable.js?body=1" type="text/javascript"></script>
<script src="/assets/mutils.js?body=1" type="text/javascript"></script>
<script src="/assets/custom.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>
<link href="/assets/datatables.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<meta content="authenticity_token" name="csrf-param" />
<meta content="Pccg3siV8wY7LftMfpyi5rgFArjehQb7g5o1BF7QL1I=" name="csrf-token" />
最佳答案
不,没有。
所有当前流行的浏览器(Seamonkey 除外)都会自己向 /favicon.ico
发出 GET 请求,并且没有办法阻止它们这样做。如果不存在,他们仍然会请求它,并继续请求它;您的应用程序或服务器无法改变这一点。
默认情况下,Rails 在 public
文件夹中包含一个大小为 0 的 favicon.ico 文件,这样就不会发送一个永远不会在响应中看到的 HTML 404 页面,而是一个内容长度为零的响应被发送,(在大多数生产配置下)将被缓存并且会更快,因为它不必由 Ruby 处理。
关于ruby-on-rails - 如何从我的 Rails 应用程序中删除图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11090602/