Articles of ruby on rails

如何禁用私人networking中gitlab的电子邮件确认

最近我安装了我的局域网的gitlab。 当我的用户尝试创build他们的账户时,他们正在收到电子邮件确认消息。 现在我的问题是我想禁用整个电子邮件确认function和一切。 对于那个什么文件我必须在gitlabconfiguration文件中configuration如何做到这一点? 哪些选项我必须改变我在ruby非常差,请详细解释。

与phusion乘客和wordpress的Rails

我们在轨道上使用ruby开发了一个站点。 它有过 网站 移动应用程序的Web服务 pipe理面板来pipe理数据。 我们开始使用WordPress来pipe理网站内容。 我们已经完成了发展,现在必须搬到生产。 这是wordpress在/ wordpress URI下工作的当前虚拟主机代码。 <Location /wordpress> PassengerEnabled off <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wordpress/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wordpress/index.php [L] </IfModule> </Location> 我想让phusion乘客为/ admin和/ api URIs工作。 和/去wordpress。 我们可以根据URI更改文档根吗? 或者其他更好的解决scheme?

Nginx和乘客 – 连接上游时失败(11:资源暂时不可用)

我有一个Nginx和Passenger的设置,certificate是有问题的。 在相对较低的负载下,服务器似乎得到了备份,并开始搅动结果,如error.log: connect() to unix:/passenger_helper_server failed (11: Resource temporarily unavailable) while connecting to upstream 我的乘客设置是: passenger_min_instances 2; passenger_pool_idle_time 1200; passenger_max_pool_size 20; 我已经做了一些挖掘,看起来像CPU挂钩。 内存使用情况看起来很好,passenger_memory_stats显示最多使用700MB左右,但CPU接近100%。 这足以造成这种types的错误? 我应该把游泳池的尺寸缩小一些吗? 是否有其他configuration设置我应该看? 任何帮助赞赏 其他相关信息: Amazon EC2小实例 Ubuntu 10.10 Nginx(最新稳定版) 乘客(最新的稳定) Rails 3.0.4

如何提高Puma的日志logging级别?

目前我只是在Rails应用程序日志文件中获取ActiveRecord和view-rendering输出,因为我从WEBrick切换到Puma。 我一直无法find我可以修改Puma日志logging输出水平的地方。 思考?

我的Nginx的重写规则应该是什么Rails与乘客的页面caching在一个子目录?

我使用的是Nginx 0.7.64,Passenger 2.2.9,Rails 2.3.5。 我有我的页面caching目录设置为/公共/caching,我希望能够提供caching页面时,通过HTTP请求,但总是击中Rails应用程序通过HTTPS请求时。 我的configuration大部分是这样的: server { listen 80; server_name website.com www.website.com; proxy_set_header X-Forwarded-Proto http; root /home/deploy/website/current/public; passenger_enabled on; if (-f $document_root/cache/$request_filename.html) { rewrite (.*) $document_root/cache/$1.html break; } } server { listen 443; server_name website.com www.website.com; root /home/deploy/website/current/public; passenger_enabled on; proxy_set_header X-Forwarded-Proto https; ssl on; ssl_certificate /home/deploy/website/shared/ssl/www.website.com.combined.crt; ssl_certificate_key /home/deploy/website/shared/ssl/www.website.com.key; } 我预计,当我请求website.com/about时,我应该被提供/public/cache/about.html,但是我打了Rails服务器(拖尾日志显示它)。 思考我可能有一个不恰当的斜线(在大多数例子中没有看到$document_root ),我也尝试了以下所有的变化,没有一个工作: if […]

如何在Mac OS X上使用Passenger(mod_rails)设置Apache?

我是一名iOS开发人员,所以我对Apache和RoR的经验很less,而且这是我第一次尝试使用Mac OS X作为服务器。 http://rubyonrails.org/deploybuild议使用Apache的Phusion Passenger(mod_rails) 。 所以这就是我想要完成的,但是我已经走到了尽头。 这就是我所做的: 我启用了Apache(设置中的checkbox),并将浏览器指向本地主机给我的文本“它的工作!”。 我也可以通过我的dyndns来访问它。 我运行以下命令来安装乘客: sudo gem install passenger passenger-install-apache2-module 我在/etc/apache2/httpd.conf添加了以下几行: LoadModule passenger_module /Library/Ruby/Gems/1.8/gems/passenger-3.0.7/ext/apache2/mod_passenger.so PassengerRoot /Library/Ruby/Gems/1.8/gems/passenger-3.0.7 PassengerRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby 然后我将以下内容添加到/etc/apache2/extra/httpd-vhosts.conf : <VirtualHost *:80> ServerName my.dyndns.org DocumentRoot /Users/Shared/rails/project/public # <– be sure to point to 'public'! <Directory /Users/Shared/rails/project/public> AllowOverride all # <– relax Apache security settings Options -MultiViews # <– MultiViews […]

Ruby on Rails应用程序的虚拟主机设置(mod passenger)

我正在尝试在apache下安装Redmine。 Apache服务器在本地networking上工作。 我的apache设置包含在一个虚拟主机上。 我可以使用相应的path获得不同的目录: HTTP:// ip_address /来folder_of_the_project_1 在这种情况下,我如何设置虚拟主机来使redmine有效? 这是我目前的虚拟主机设置: NameVirtualHost * <VirtualHost *> ServerAdmin webmaster@localhost DocumentRoot /var/www/ RailsBaseURI /redmine <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> <Directory /var/www/redmine/public> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory […]

使用force_ssl = true运行Rails3,使用nginx,在AWS EC2上使用由ELB终止的SSL,设置运行状况检查

我想用SSL运行我的整个Rails应用程序,所以我想使用Rails的全局force_sslconfiguration选项,这很好,除了ELB的健康检查程序将永远不会工作,因为如果我将它设置为http,Rails将转发到https与一个301,健康检查将失败,因为它不是200.如果我将它设置为https,nginx / rails将无法处理请求,因为SSL由ELB处理,而nginx / rails只处理HTTP。 我的非理想的解决scheme是为健康检查页面设置global force_ssl的例外,但是Rails的global force_sslconfiguration总是覆盖force_ssl :except => :health_check所以看起来似乎不起作用。 另一个解决scheme是不使用ELB进行SSL终止,并设置HAProxy等,但是我想尽可能多地使用Amazon的基础设施,把重点放在项目的核心开发上,而不是基础设施上。 这是我的第一个serverfaultpost,所以我很感激任何帮助,我可以得到(或更多的信息,我可以给)。 谢谢。 更新: 到目前为止,我通过让ELB通过不同于80的端口访问EC2实例来解决这个问题,只有它可以访问,这感觉极端,但是在应用层和服务器层之间保持分离。 如果健康检查请求来自此端口的ELB,则nginx会将X-Forwarded-Proto标头设置为“https”,这会让Rack认为它是通过SSL来通过的。 对于来自标准端口80的所有其他stream量,它只是转发由ELB给出的X-Forwarded-Proto头,这将准确地报告外部用户正在使用什么,并让Rails决定强制使用https还是不依赖。 仍然在等待一个更清洁的解决scheme,但这是我所拥有的。

Firefox和Chrome持续使用nginx / Passenger在Rails应用上强制HTTPS

我有一个非常奇怪的问题,每次我尝试在非SSL模式下浏览我的Rails应用程序时,Chrome(v16)和Firefox(v7)会不断强制我的网站以HTTPS的forms提供服务。 我的Rails应用程序部署在使用Capistrano,nginx,Passenger和通配符SSL证书的Ubuntu VPS上。 我在nginx.conf中为端口80设置了这些参数: passenger_set_cgi_param HTTP_X_FORWARDED_PROTO http; passenger_set_cgi_param HTTPS off; 我的nginx.conf的长版本可以在这里find: https : //gist.github.com/2eab42666c609b015bff ssl-redirect.include文件包含: rewrite ^/sign_up https://$host$request_uri? permanent ; rewrite ^/login https://$host$request_uri? permanent ; rewrite ^/settings/password https://$host$request_uri? permanent ; 当来自非SSL请求时,确保这三个页面使用HTTPS。 我的production.rb文件包含这一行: # Enable HTTP and HTTPS in parallel config.middleware.insert_before Rack::Lock, Rack::SSL, :exclude => proc { |env| env['HTTPS'] != 'on' } 我已经尝试通过nginx重写redirect到HTTP,Ruby on Railsredirect,也使用Rails视图使用HTTP协议的URL。 我的application.rb文件包含在before_filter钩子中使用的这个方法: […]

使用Passenger时,使用Nginx的Apache和Rails有什么优点和缺点?

Passenger最近得到了对Nginx的支持,Apache作为Rails应用程序的Web服务器有什么优点和缺点呢?