deprec --enable-proxy --enable-proxy-balancer --enable-proxy-http --enable-rewrite --enable-cache --enable-headers --enable-ssl --enable-deflate --with-included-apr new --enable-proxy=shared --enable-proxy-balancer=shared --enable-proxy-http=shared --enable-proxy-html=shared --enable-rewrite --enable-cache --enable-headers --enable-ssl=shared --enable-deflate --with-included-apr --enable-so --enable-cgi --enable-info --enable-mime-magic --enable-usertrack --enable-mem-cache --enable-modules=all --enable-mods-shared=all --with-mpm=worker Capistrano.configuration(:must_exist).load do desc "Install full apache with mod_php and extras" task :install_full_apache do version = 'httpd-2.2.4' set :src_package, { :file => version + '.tar.gz', :md5sum => '3add41e0b924d4bb53c2dee55a38c09e httpd-2.2.4.tar.gz', :dir => version, :url => "http://www.apache.org/dist/httpd/#{version}.tar.gz", :unpack => "tar zxf #{version}.tar.gz;", :configure => './configure --enable-so --enable-cgi --enable-info --enable-mime-magic --enable-usertrack --enable-deflate --enable-proxy=shared --enable-proxy-html=shared --enable-proxy-http=shared --enable-proxy-balancer=shared --enable-rewrite --enable-cache --enable-mem-cache --enable-ssl=shared --enable-headers --enable-modules=all --enable-mods-shared=all --with-included-apr --with-mpm=worker;', :make => 'make;', :install => 'make install;', :post_install => 'install -b support/apachectl /etc/init.d/httpd;' } run "export CFLAGS=-O2;" deprec.download_src(src_package, src_dir) deprec.install_from_src(src_package, src_dir) # ubuntu specific - should instead call generic name which can be picked up by different distros send(run_method, "update-rc.d httpd defaults") end desc "Install PHP from source" task :install_php_from_source do version = 'php-5.2.1' set :src_package, { :file => version + '.tar.gz', :dir => version, :url => "http://ca.php.net/distributions/#{version}.tar.gz", :unpack => "tar zxf #{version}.tar.gz;", :configure => "./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --disable-ipv6 --enable-sockets --enable-soap --with-pcre-regex --with-mysql --with-zlib --with-gettext --with-sqlite --enable-sqlite-utf8 --with-openssl --with-mcrypt --with-ncurses --with-jpeg-dir=/usr --with-gd --with-ctype --enable-mbstring --with-curl==/usr/lib;", :make => 'make;', :install => 'make install;', :post_install => "" } apt.install( {:base => %w(flex libcurl3 libcurl3-dev libmcrypt-dev libmysqlclient15-dev libncurses5-dev)}, :stable ) run "export CFLAGS=-O2;" deprec.download_src(src_package, src_dir) deprec.install_from_src(src_package, src_dir) end desc "Install apache, ruby, php, and server extras" task :install_full_rails_stack do setup_user_perms enable_universe # we'll need some packages from the 'universe' repository disable_cdrom_install # we don't want to have to insert cdrom install_packages_for_rails # install packages that come with distribution install_rubygems install_gems install_rmagick install_postfix install_full_apache install_php_from_source # php must be installed after apache, needs 'apxs' in apache2/bin end end