gpt4 book ai didi

ruby - Sinatra、Unicorn 和服务 JavaScript

转载 作者:太空宇宙 更新时间:2023-11-03 16:34:06 24 4
gpt4 key购买 nike

我正在使用 unicorn服务 sinatra应用程序,前端正在使用 bootstrap.jsjQuery(UI) .

目前,当我在本地机器上运行应用程序并从本地机器访问页面时,一切都是应该的。但是,我让同事从他们在 LAN 上的机器连接,他们的结果是不同的。究竟什么加载什么不加载有点不清楚,但有一点是肯定的:并非所有的 JavaScript 都将发送到远程机器。主页使用 jQueryUI 选项卡,但是当页面加载到服务器以外的任何主机上时,它在没有它们的情况下呈现(相反,有一个带链接的项目符号列表)。

.js文件由普通 HTML 引用 <script> Sinatra 提供的 ERB 文件中的标记。

unicorn 的输出表明正在正确请求和发送 js 文件(我得到每个文件的 HTTP 200 状态):

xxx.xxx.xxx.xxx - - [18/May/2012 09:41:12] "GET /js/jquery-1.7.2.min.js HTTP/1.1" 200 94840 0.0257
xxx.xxx.xxx.xxx - - [18/May/2012 09:41:12] "GET /js/jquery-ui-1.8.20.custom.min.js HTTP/1.1" 200 206731 0.0113
xxx.xxx.xxx.xxx - - [18/May/2012 09:41:12] "GET /js/bootstrap.js HTTP/1.1" 200 50089 0.0056

每个文件的本地权限都是755,位于[app_root]/public/js。

很明显,我的问题不是与 Sinatra 或 Unicorn 相关的可能性,但这是我目前的背景。如果有什么我应该调查的,或者是否应该在问题中添加更多信息,请告诉我。

最佳答案

我认为问题出在 DSL 链接中,Sinatra 不理解 /js/jquery-1.7.2.min.js 路由,如果你的代码中没有描述它的话,但是只要它是静态文件,你就可以这样做:

set :public, File.dirname(__FILE__) + '/js'

这告诉 Sinatra 您的 /js 文件夹中的所有文件都是静态的,并且应该以正确的方式提供

关于ruby - Sinatra、Unicorn 和服务 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10653905/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com