Articles of ruby,

用OS X上的Phusion Passenger + Sinatra + Nginx修复权限错误

我试图让Phusion Passenger在Nginx上与Sinatra一起工作,而且我遇到了和前面的问题一样的错误。 关于Nginxconfiguration的Sinatra – 怎么了? 我确定修复是一样的。 我只需要更改Nginx正在运行的用户的权限,以便能够读取正确目录的内容。 先前的问题被标记为回答,但没有给出他们如何解决问题的具体细节。 我需要知道, 1.如何识别用户正在运行的nginx下 2.如何让该用户读取我的应用程序目录(/ opt / nginx / html / sinatratest) 注意:我可以设置并运行一个Rails应用程序,并获得Rails欢迎屏幕没有问题,所以我知道我已经设置和工作。 编辑:我运行Mac OS X 10.6 这是我的文件 应用 #myapp.rb require 'sinatra' get '/' do 'Hello world!' end configuration #config.ru require 'rubygems' require 'sinatra' require 'myapp.rb' run Sinatra::Application Nginx的configuration块 server { listen 8889; server_name localhost; root html/sinatratest passenger_enabled on […]

如何删除nginx?

我用命令安装了nginx和乘客: rvmsudo passenger-install-nginx-module 有没有什么好方法可以很容易地将其删除?

Nginx和后端服务器之间的IPC机制是什么?

Nginx将请求传输到其他后端服务器,如Thin(Ruby服务器)或Node.js服务器或Tomcat,那么它们之间的IPC机制是什么? 共享内存? 套接字(即使在同一台机器)? pipe? 标准IO? (对于CGI或FastCGI,它是) 或者是其他东西?

在rails应用上运行ruby的麻烦

我试图运行服务器上的应用程序和日志文件给我一个错误 You may have mistyped the address or the page may have moved. 并在日志文件中 [2014-03-12T09:50:22.614788#1647]信息 – :开始GET“/”为84.38.185.44于2014-03-12 09:50:22 +0000 F,[2014-03-12T09:50: 22.771502#1647]致命 – :ActionController :: RoutingError(没有路由匹配[GET]“/”):actionpack(4.0.2)lib / action_dispatch / middleware / debug_exceptions.rb:21:在call' actionpack (4.0.2) lib/action_dispatch/middleware/show_exceptions.rb:30:in call'railties(4.0.2)lib / rails / rack / logger.rb:38:in call_app' railties (4.0.2) lib/rails/rack/logger.rb:20:in调用call_app' railties (4.0.2) lib/rails/rack/logger.rb:20:in块activesupport(4.0.2)lib / active_support / tagged_logging.rb:67: block in tagged' […]

生产中的图像上传失败

我使用Nginx + Passenger的数字海洋液滴作为服务器。 我们在Rails中使用CarrierWave gem上传图像和resize/处理并将其上传到Amazon S3。 它在本地环境中工作得很好,但是当我将其部署到生产中时,图像上传不起作用。 错误: 我们很抱歉,但是出现了一些问题。 该应用程序在80端口运行 不知道在哪里看甚至debugging问题。 乘客日志也不会显示任何错误。

Heroku上的Rails + Passenger:如何在静态资源的HTTP头文件中设置终止date或最大年龄?

我正在使用Rails api和一个angularjs前端,它只是作为public目录下的静态文件提供服务。 我select乘客作为应用程序服务器,部署到heroku和似乎一切工作正常,除了caching。 由于静态资产是由乘客/ nginx服务的,我相信这与轨道无关。 但是我不知道如何让它工作或者在哪里添加configuration。 请求静态文件时的响应头( application-a24e9c3607.js ): Connection: keep-alive Content-Length: 0 Date: Thu, 14 Jan 2016 06:45:31 GMT Etag: "5696ce02-43102" Last-Modified: Wed, 13 Jan 2016 22:21:54 GMT Server: nginx/1.8.0 Via: 1.1 vegur

Capistrano +瘦+ Nginx的用户不允许sudo howto?

我有一个这样的情景,我想用capistrano来部署我的ruby在rails应用程序: Web应用程序位于/ etc / thin下的configuration文件的瘦集群上。 init脚本也在/etc/init.d/thin中,所以只要我的服务器需要重启就会自动启动 同样,nginx也是以相同的方式执行的(和init脚本守护进程一样) 为了确保万一有人攻击我的networking服务器,我不希望他们做太可怕的事情,所以networking用户不能sudo。 Thin和nginx都以web用户身份运行,以执行此类安全性 现在,当我需要部署时,我需要将文件安装在/ home / webuser / railsapps / helloworld下,然后我需要cap script重新启动我的瘦客户机。 我想保留所有由webuser拥有的文件,所以cap script主用户以webuser的身份运行。 现在,当我想重新启动瘦守护程序时,会出现问题,因为webuser无法sudo。 我想如果有可能调用两个单独的会话webuser文件部署,然后一个特殊的sudoer重新启动守护进程。 任何人都可以给我一个这样的示例脚本?

Passenger / Ruby内存使用在Ubuntu上失控

最近几天,Passenger已经在我的Slicehost VPS上占用了大量的内存,我似乎无法控制它。 它运行了好几个小时,然后突然产生了大量的ruby。 我认为Apache是​​问题所在,所以我切换到Nginx,但问题依然存在。 这是一个top的转储: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 5048 avishai 20 0 160m 43m 1192 S 0 10.9 0:00.77 ruby1.8 5102 avishai 20 0 151m 41m 1392 S 0 10.6 0:00.07 ruby1.8 5091 avishai 20 0 153m 30m 1400 D 0 7.6 0:00.27 ruby1.8 5059 avishai […]

为什么在nginx下使用Sinatra与Passenger发生404错误?

我有一个在本地运行良好的基于​​Sinatra的应用程序。 我把它移动到一个基于nginx的服务器与Passenger,现在我所有的应用程序/public文件的链接都返回404错误。 主应用程序运行后,能够访问正确呈现的/view的HAML模板。 文件存在,权限正确; 我可以打开并编辑它们,所以我知道它们在那里。 在我的HAML模板中,我指的是我无法像这样访问的文件: %script{ :src => 'js/jquery.js' } %link{ "rel" => "stylesheet", "href" => "styles/input.css" } 我的config.ru已经经历了很多突变,而我试图find问题。 目前我有: require 'sinatra' require './peering_template.rb' root_dir = File.dirname(__FILE__) # disable :run # set :root, root_dir # set :views, File.join(File.dirname(__FILE__), 'views') # set :environment, (ENV['RACK_ENV'] ? ENV['RACK_ENV'].to_sym : :development) run Sinatra::Application 该应用程序存在于/home/apps/peering_template 。 网页空间是/home/webapps 。 在/home/webapps这样的软链接: […]

独angular兽+ NGINX:不能启动独angular兽

我刚刚开始玩Unicorn和NGINX设置(任何全面的参考,将不胜感激。我已经爬行谷歌三天,并编译我必须让我的服务器在机架空间运行)。 继续我的问题。 它看起来像我有,希望是正确的,设置NGINX指向我的Rails应用程序的目录。 它能够显示500错误页面。 现在我正在开始独angular兽的过程 unicorn_rails -c /home/deployer/public_html/app/config/unicorn.rb 它给了我这个错误 /home/deployer/.rvm/gems/ruby-1.9.3-p0/gems/unicorn-4.1.1/lib/unicorn/socket_helper.rb:144:in `initialize': Permission denied – bind(2) (Errno::EACCES) from /home/deployer/.rvm/gems/ruby-1.9.3-p0/gems/unicorn-4.1.1/lib/unicorn/socket_helper.rb:144:in `new' from /home/deployer/.rvm/gems/ruby-1.9.3-p0/gems/unicorn-4.1.1/lib/unicorn/socket_helper.rb:144:in `bind_listen' 我试图启动端口80上的应用程序,我知道我需要超级用户权限绑定到低于1024的任何东西。但是,当我尝试使用sudo它给了我 sudo: unicorn_rails: command not found 任何帮助,将不胜感激!