Sep 14 2006
User: cedric
Category: Ruby on Rails
Tags:

libapache2-mod-fcgid & apache2

En consultant le wiki Ruby on rails pour chercher des infos concernant fastcgi et le moyen d’améliorer les performances de mon petit serveur je me suis lancé dans l’installation de libapache2-mod-fcgid sur ma debian.

la version 1.10 du module est disponible en .deb dans unstable

Le tutorial est très simple, un petit tuning du fichier de config du module /etc/apache2/mods-available/fcgid.conf pour mettre en place des timeouts et un nombre maximal de processus dispatch.fcgi par application:
    <IfModule mod_fcgid.c>
      AddHandler fcgid-script .fcgi
      SocketPath /var/lib/apache2/fcgid/sock
      DefaultInitEnv  RAILS_ENV production
      IdleTimeout 600
      ProcessLifeTime 3600
      MaxProcessCount 8
      DefaultMinClassProcessCount 3
      DefaultMaxClassProcessCount 3
      IPCConnectTimeout 8
      IPCCommTimeout 48
    </IfModule>
la configuration d’apache2 et de votre application Rails se fait en suivant ce tutorial virtual host:
    NameVirtualHost 66.35.36.247:80
    <VirtualHost 66.35.36.247:80>
      ServerName www.example.com
      DocumentRoot /home/httpd/WWW.EXAMPLE.CA/MYAPPNAME/public/
      CustomLog /var/log/apache2/referer_log combined
      #  Note that you can't put this in the .htaccess
      <Directory /home/httpd/WWW.EXAMPLE.CA/MYAPPNAME/public/>
      Options ExecCGI +FollowSymLinks
      AllowOverride All
      order allow,deny
      allow from all
     </Directory>
    </VirtualHost>
fichier .htaccess:
    RewriteEngine On
    # General Apache options
    #COMMENTED OUT#AddHandler fastcgi-script .fcgi
    #COMMENTED OUT#AddHandler cgi-script .cgi
    AddHandler fcgid-script .fcgi
    Options +FollowSymLinks +ExecCGI
    [...]
    RewriteRule ^$ index.html [QSA]
    RewriteRule ^([^.]+)$ $1.html [QSA]
    RewriteCond %{REQUEST_FILENAME} !-f
    #COMMENTED OUT#RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
    RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
    [...]
Après un redémarrage du serveur apache, les performances semblent bien meilleures, et au vu des commentaires sur les différents HOWTO fcgid et la seule solution stable pour apache2

comments : 1 Add comment

posted : Oct 04 2006 02:42PM by :cedric

Pour les redemarrages d’Apache sur ma debian, il semble que

/etc/init.d/apache2 stop && /etc/init.d/apache2 start

soit plus efficace que

apache2ctl restart
Back
Log in

Quick links

Localization

Search

weather


  • metric us

gallery

Last comments

Categories

  • categories

nabaztag

  • message

    left
    right
    voice
    speed
    pitch

hcard