我在Fedora服务器上安装了nginx + passenger +单轨应用程序。 我关于我的应用程序的nginx.conf看起来像这样: server { listen 80; server_name myapp.mycompany.com; root /opt/apps/myapp_large_name/public; passenger_enabled on; client_max_body_size 4M; } 所以当我访问myapp.mycompany.com.br它访问我的rails应用程序/ opt / apps / myapp_large_name / public下。 我想能够configuration一个子path来访问另一个应用程序(在这种情况下,monit)。 我想要这样的东西: myapp.mycompany.com.br/monit访问监控应用程序。 可能吗?
我有一个Ubuntu服务器(10.04)与Nginx和乘客。 我已经安装了RVM,并且安装了Passenger 3.02的全局gemset。 我的应用程序是在另一个有轨道等gemset安装。 当我configurationnginx来服务应用程序时,我得到一个错误,说Bundler找不到这个gem。 在任何源代码中找不到abstract-1.0.0(Bundler :: GemNotFound) 运行rvm信息我看到以下内容: environment: PATH: "/home/richard/.rvm/gems/[email protected]/bin:/home/richard/.rvm/gems/ree-1.8.7-2010.02@global/bin:/home/richard/.rvm/rubies/ree-1.8.7-2010.02/bin:/home/richard/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" GEM_HOME: "/home/richard/.rvm/gems/ree-1.8.7-2010.02@richarddowden" GEM_PATH: "/home/richard/.rvm/gems/ree-1.8.7-2010.02@richarddowden:/home/richard/.rvm/gems/ree-1.8.7-2010.02@global" MY_RUBY_HOME: "/home/richard/.rvm/rubies/ree-1.8.7-2010.02" IRBRC: "/home/richard/.rvm/rubies/ree-1.8.7-2010.02/.irbrc" RUBYOPT: "" gemset: "richarddowden" 并在我的(全球)Nginx的conf文件中,我有以下几点: http { passenger_root /home/richard/.rvm/gems/ree-1.8.7-2010.02@global/gems/passenger-3.0.2; passenger_ruby /home/richard/.rvm/wrappers/ree-1.8.7-2010.02@global/ruby; 我做错了什么愚蠢的事情? 我是否需要在应用程序的nginxconfiguration文件中复制passenger_rubyvariables? 谢谢,理查德
我们的Web应用程序正在运行在Linode 2048服务器上(〜2048 GB的RAM) MYSQL数据库是在它自己的另一个linode上,所以这个服务器实际上只处理NGINX和Rails应用程序。 应用程序本身每个实例使用大约185976个内存(RSS)。 我们的stream量是每天<1000,页面大部分都是caching的,所以对应用程序本身的点击次数较less。 我的问题是 – 我如何计算我的应用程序的最佳NGINXconfiguration设置? 以下是目前的configuration: worker_processes 1; # pid of nginx master process pid /var/run/nginx.pid; events { worker_connections 1024; } http { access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; passenger_root /home/user/.rvm/gems/ree-1.8.7-2011.01@URTV/gems/passenger-3.0.3; passenger_ruby /home/user/.rvm/rubies/ree-1.8.7-2011.01/bin/ruby; include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; tcp_nodelay on; # gzip settings gzip on; gzip_http_version 1.0; gzip_comp_level 2; gzip_vary […]
我有两个不同的Rails(乘客)应用程序,我要在一台服务器上托pipe: somehost.com/ <– App #1 somehost.com/admin <— App #2 尝试玩'地点'指令,但没有能够运作。 有人可以build议正确的做法吗? (我宁愿共享相同的环境,只从不同的目录启动) 编辑:示例(所需)configuration 试图做一些事情: server { listen 80; server_name myhost.com; rails_env production; passenger_enabled on; location / { root /opt/main_site/public/; } location /dev { root /opt/admin_site/public/; } }
我有一个运行在具有多个IP地址和多个虚拟主机的服务器上的ruby应用程序。 这是有问题的虚拟主机的configuration: <VirtualHost 10.0.0.10:80> ServerName realname.example.com ServerAlias alias.example.com DocumentRoot /var/www/sites/example/current/public <Directory /var/www/sites/example/current/public> AllowOverride all Options -MultiViews </Directory> ErrorLog /var/log/httpd/example_error_log CustomLog /var/log/httpd/example_access_log common RailsEnv production RackEnv production </VirtualHost> 当我拉起realname.example.com Ruby on Rails应用程序正常工作。 另一方面, alias.example.com只是给我Not Found: / 我相当确定正确的虚拟主机正在使用,因为alias.example.com在正确的日志文件中产生一个404。 我已经尝试将日志logging添加到Passengerconfiguration,它似乎表明Passenger正在获取请求。 注意:我无法将alias.example.comredirect到realname.example.com。 realname是使用CDN访问的,而别名是直接访问的。 任何人有任何想法,为什么这是行不通的? 我一直在b my我的头几天,而且我也有类似的QAconfiguration,按预期工作。
目标:build立一个服务器,可以接收来自域的https和http请求,并转发到在服务器上运行的rails应用程序。 rails应用程序在localhost:3002上运行,所有连接到服务器的尝试都是从互联网上的另一台机器上进行的。 我遵循这个指南: http : //hints.macworld.com/article.php?story=20041129143420344 这是我的虚拟主机定义 NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "/Users/me/projects/myproject/public" ServerName ssl.mydomain.com ServerAlias *.ssl.mydomain.com ProxyPass / http://localhost:3002/ # the rails app forwards all http requests to https </VirtualHost> <VirtualHost *:443> SSLEngine on SSLProxyEngine On RequestHeader set Front-End-Https "On" CacheDisable * SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL DocumentRoot "/Users/me/projects/myproject/public" ServerName ssl.mydomain.com ServerAlias *.ssl.mydomain.com SSLCertificateKeyFile "/private/etc/apache2/certs/webserver.nopass.key" SSLCertificateFile "/private/etc/apache2/certs/newcert.pem" […]
我最近将我的rails应用程序从使用HTTP请求迁移到HTTPS。 我的应用程序URL如下所示: https : //testmate.persistent.co.in 我已经在nginx.conf文件中模拟了所有必需的configuration 我的nginx.conf文件如下所示: # start the http module where we config http access. http { … server { listen 443; ssl on; ssl_certificate certificate.pem; ssl_certificate_key server.key; ssl_protocols SSLv3; proxy_set_header X-FORWARDED-PROTO https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_max_temp_file_size 0; proxy_set_header X-Forwarded-Ssl on; # doc root root /var/www/TestMate/current/public/; passenger_enabled on; […]
最近我开始使用伟大的工具进行负载均衡 – Haproxy。 只有一个令人不安的事情,我不知道如何处理它。 我们使用haproxy来负载平衡mysql的stream量。 当有大量的stream量和很多的连接,haproxy需要很长的时间来重新加载(〜30分钟),stream量较less,它会在1分钟内重新加载。 我重新加载: service haproxy reload 当然,如果我需要在configuration上做一个紧急的改变,我希望haproxy能够快速地重新加载。 终止等待断开的haproxy实例会导致msyql连接断开连接。 它看起来像我在haproxy的设置或应用程序的设置中犯了错误。 如果你知道如何解决这个问题,请帮助我。 谢谢!
我试图设置我的rails应用程序到一个特定的子域。 我正在使用ec2实例与bitnami rubystack虚拟机我开发的应用程序使用它的服务器的IP,所以我知道轨道和应用程序的工作。 $ {nginx的-DIR} /conf/nginx.conf server { listen 80 default_server; server_name _; server_name_in_redirect off; proxy_intercept_errors on; return 401; } include "/opt/bitnami/nginx/conf/vhosts/*.conf"; $ {nginx的-DIR} /conf/vhosts/backend.conf upstream thin_instances { server 0.0.0.0:3000; server 0.0.0.0:3001; server 0.0.0.0:3002; fair; } server { # port to listen on. Can also be set to an IP:PORT listen 80; server_name backend.mydomain.com; root […]
我已经把乘客安装成ruby了。 我已经添加到/etc/apache2/apache2.conf LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.4/ext/apache2/mod_passenger.so PassengerRuby /usr/bin/ruby PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.4 并设置Vitual主机到Rails应用程序〜/公共目录,但是当我访问该网站,我只看到dispatch.fcgi的内容,但没有得到执行 〜/ public目录中的.htaccess是 AddHandler fcgid-script .fcgi AddHandler cgi-script .cgi Options +FollowSymLinks +ExecCGI RewriteEngine On RewriteRule ^$ index.html [QSA] RewriteRule ^([^.]+)$ $1.html [QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] 但是,如果我运行脚本/服务器,一切工作正常,所以应用程序本身没有问题。