Module: Moonshadow::Manifest::Rails::Apache
- Included in:
- Moonshadow::Manifest::Rails
- Defined in:
- lib/moonshadow/manifest/rails/apache.rb
Instance Method Summary collapse
-
#apache_server ⇒ Object
Installs Apache 2.2 and enables mod_rewrite and mod_status.
Instance Method Details
#apache_server ⇒ Object
Installs Apache 2.2 and enables mod_rewrite and mod_status. Enables mod_ssl if configuration[:ssl]
is present
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/moonshadow/manifest/rails/apache.rb', line 5 def apache_server package "apache2-mpm-worker", :ensure => :installed service "apache2", :require => package("apache2-mpm-worker"), :restart => '/etc/init.d/apache2 restart', :ensure => :running a2enmod('rewrite') a2enmod('status') if configuration[:ssl] a2enmod('headers') a2enmod('ssl') end if configuration[:apache] && configuration[:apache][:users] htpasswd = configuration[:apache][:htpasswd] || "#{configuration[:deploy_to]}/shared/config/htpasswd" file htpasswd, :ensure => :file, :owner => 'rails', :mode => '644' configuration[:apache][:users].each do |user,pass| exec "htpasswd #{user}", :command => "htpasswd -b #{htpasswd} #{user} #{pass}", :unless => "grep '#{user}' #{htpasswd}" end end status = <<-STATUS <IfModule mod_status.c> ExtendedStatus On <Location /server-status> SetHandler server-status order deny,allow deny from all allow from 127.0.0.1 </Location> </IfModule> STATUS file '/etc/apache2/mods-available/status.conf', :ensure => :present, :mode => '644', :require => exec('a2enmod status'), :content => status, :notify => service("apache2") file '/etc/logrotate.d/varlogapachelog.conf', :ensure => :absent end |