草庐IT

ruby-on-rails - 403 Forbidden on Rails app w/Nginx, Passenger

首先,道歉:我知道403Forbidden问题是Rails/Nginx安装的常见问题,但到目前为止我读过的答案都没有为我解决。免责声明:这是我第一次在Heroku以外的地方部署Rails应用程序。请温柔点;)情况:我有一个Rails应用程序在Ubuntu12.04服务器上运行,运行Nginx(随Passenger安装)。我已将我的应用程序正确部署到我的服务器,但是当我尝试访问该站点时,我收到403禁止访问错误。检查我的错误日志,我看到:2013/10/2322:47:01[error]27954#0:*105directoryindexof"/var/www/colepeters.co

ruby-on-rails - ActionCable - 无法在生产环境中升级到 WebSocket

ActionCable在生产中不起作用。在开发中运行良好,但在生产中运行不佳。在Ubuntu14.04上使用Puma运行Nginx。我已经检查过redis-server已启动并正在运行。Rails-v5.0.0.1production.log:INFO--:StartedGET"/cable/"[non-WebSocket]for178.213.184.193at2016-11-2514:55:39+0100ERROR--:FailedtoupgradetoWebSocket(REQUEST_METHOD:GET,HTTP_CONNECTION:close,HTTP_UPGRADE:)

ruby-on-rails - Sidekiq 工作人员没有被触发

我正在使用Sidekiq对于我的后台工作:我有一个workerapp/workers/data_import_worker.rbclassDataImportWorkerincludeSidekiq::Workersidekiq_optionsretry:falsedefperform(job_id,file_name)begin#Somelogicinit.....endend从文件lib/parse_excel.rb调用defparse_raw_data#job_idand#filenamearedefinedbfrDataImportWorker.perform_async(jo

ruby - 使用 nginx 的乘客安装失败

我在amd-64平台上运行ubuntu9.10服务器。一切都非常标准,我已经在ruby​​1.8安装上运行了Sinatra0.94。我想安装passenger以便轻松配置ssl。问题是,它找不到安装程序。我跑sudogeminstallpassenger或sudogeminstall-rpassenger然后是下一行,passenger-install-nginx-module或passenger-install-apache2-module都失败了,因为找不到路径。我在这里忘记了什么吗?一旦安装了gem,它不应该直接工作吗? 最佳答案

ruby - 如何在像 nginx 这样的代理后面时在 rails 日志中记录真实的客户端 ip

问题我在两台服务器上安装了Rails3.2.15和机架1.4.5。第一个服务器是服务于静态Assets的nginx代理。第二台服务器是为Rails应用程序提供服务的unicorn。在Railsproduction.log中,我总是看到nginxIP地址(10.0.10.150)而不是我的客户端IP地址(10.0.10.62):StartedGET"/"for10.0.10.150at2013-11-2113:51:05+0000我想在日志中有真实的客户端IP。我们的设置HTTPheaderX-Forwarded-For和X-Real-IP在nginx中设置正确,我已经定义了10.0.1

nginx服务器同一个IP怎么配置多个域名?

  一台服务器nginx绑定多个域名,多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里。  一:  每个域名一个文件的写法  首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers,如要绑定域名www.itblood.com则在此目录建一个文件:www.itblood.com.conf然后在此文件中写规则,如:  server{  listen80;  server_namewww.itblood.com;#绑定域名  indexindex.htmindex.ht

ruby - 通过 Nginx 的 EventSource/Server-Sent 事件

在服务器端使用带有streamblock的Sinatra。get'/stream',:provides=>'text/event-stream'dostream:keep_opendo|out|connections在客户端:vares=newEventSource('/stream');es.onmessage=function(e){$('#chat').append(e.data+"\n")};当我通过http://localhost:9292/直接使用应用程序时,一切正常。连接是持久的,所有消息都传递给所有客户端。但是,当它通过Nginx时,http://chat.dev,连接

ruby - 如何使用 nginx proxy_pass 保留请求 url

我正在尝试使用Thin应用服务器,有一个问题。当nginxproxies使用proxy_passhttp://my_app_upstream;对Thin(或Unicorn)的请求应用程序接收nginx发送的修改后的URL(http://my_app_upstream)。我想要的是不加修改地传递原始URL和来自客户端的原始请求,因为应用严重依赖它。nginx'doc说:IfitisnecessarytotransmitURIintheunprocessedformthendirectiveproxy_passshouldbeusedwithoutURIpart.但我不明白如何配置它,因为

javascript - 服务器在静态网站上渲染 React js

我最近一直在探索React,我看到了如何设置诸如Node到服务器渲染代码之类的东西。出于速度原因,我真的对使用静态页面很感兴趣,但我不确定在使用静态html时是否可以渲染React组件。我可以使用类似nginx的东西来触发react渲染吗?或者我是否需要更多并且必须使用Node、rails或sinatra之类的东西?很抱歉,如果这是一个被误导的问题,我对服务器客户端交互没有很强的感觉。 最佳答案 我们导出一个允许您呈现为静态HTML的函数-ReactDOMServer.renderComponentToStaticMarkup(do

javascript - V8 引擎将 JavaScript 编译为机器代码。那么,为什么 node.js 不比 C 快?

根据languagebenchmarks,JavaScriptV8在regex-dna程序上比其他编程语言更快。那么,为什么node.js应用程序(即http服务器)不比C应用程序(即Nginx、Lighttpd)快? 最佳答案 因为V8应用程序是javascript应用程序。即使javascript最终被编译为机器代码,运行时特性也不同。例如,如果您在一个对象中调用一个函数,而该对象没有定义该函数,则运行时必须通过遍历原型(prototype)层次结构来定位该函数,该层次结构可以在程序的生命周期中随时更改。可以进行巧妙的优化,但开